规则与函数 (Rule & function)
规则与check不同于:
可使用于多列,但每列只允许定义一次
check只用于一列 但一列可定义多个check
可用系统控制面板建立规则 用@x 来定义规则文本
 Function:
例
 //定义相减的两列值函数 求Remain
//定义相减的两列值函数 求Remain CREATE FUNCTION CalcRemain (@x decimal(6,0),@y decimal(6,0))
CREATE FUNCTION CalcRemain (@x decimal(6,0),@y decimal(6,0)) RETURNS decimal (6,0) AS
RETURNS decimal (6,0) AS   BEGIN
BEGIN  return (@x-@y)
 return (@x-@y) END
END 规则和函数都必须要绑定列才能生效
Function 绑定:
 Alter table Table_name
Alter table Table_name ADD RemainNum [<-This is the Column name I make]
ADD RemainNum [<-This is the Column name I make]  AS
AS  dbo.CalcRemain(Column_1,Column_2)[数据类型应保持一致]
 dbo.CalcRemain(Column_1,Column_2)[数据类型应保持一致] 
 go
go
 -----
----- 测试
测试 -----
----- Select * from Table_name
Select * from Table_name --返回RemainNum的结果就是Column_1 - Column_2
--返回RemainNum的结果就是Column_1 - Column_2---
也可直接调系统自定义函数
Select *,dbo.CalcRemain(Column_1,Column_2) as RemainNum from Table_name
总觉得定义规则不如定义Check. 没有具体实战
Function应该是比较常用的 :)
posted on 2006-01-08 07:45 Royman.Chen 阅读(528) 评论(0) 收藏 举报
 
                    
                 
 
                
            
         浙公网安备 33010602011771号
浙公网安备 33010602011771号