SQL定义自己定义表类型

SQL Server 2008可以创自己的表类型,方便应用到重复使用的地方,这样就不必重复定义表代码。

下面是定义表类型的例子,

IF  TYPE_ID ( ' dbo.MyReport ' IS   NOT   NULL
    
DROP  TYPE dbo.MyReport
CREATE  TYPE dbo.MyReport  AS   TABLE
(
    
[ Id ]   [ int ] ,    
    
[ OldValue ]   [ decimal ] ( 18 6 ),
    
[ NewValue ]   [ decimal ] ( 18 6 )
)

  

接下,我们怎样使用这个表类型呢,它跟使用SQL 标准数据类型很相似,参考下面代码,

SQL定义自己定义表类型 代码
-- 定义一个变量为自己定义表类型
DECLARE   @SalaryReport    AS  MyReport

UPDATE   [ dbo ] . [ Member ]   SET   [ Salary ]   =    [ Salary ]   *  ( 1   +   0.05 )
OUTPUT deleted.
[ MemberId ] ,deleted. [ Salary ] ,inserted. [ Salary ]
INTO   @SalaryReport  

SELECT   *   FROM   @SalaryReport

 

 

 

你可能感兴趣的:(sql)