WEB开发网
开发学院数据库MSSQL Server SQL Server 2008数据库中如何使用表值参数 阅读

SQL Server 2008数据库中如何使用表值参数

 2008-09-27 10:05:19 来源:WEB开发网   
核心提示: 图 3:指定模板参数列的数值在填写在适当的数值之后,点击确定按钮,SQL Server 2008数据库中如何使用表值参数(2),一个“CREATE TYPE”的声明取代了范本,这时,如与另一个表象关联或者将变量中的记录填充到另一个表,对于表变量来说,你也可以手动增加

图 3:指定模板参数列的数值

在填写在适当的数值之后,点击确定按钮,一个“CREATE TYPE”的声明取代了范本。这时,你也可以手动增加一些列,或者增加一些限制条件,最后点击确定按钮。

以下是最终的代码:

-- ================================
-- Create User-defined Table Type
-- ================================
USE Test
GO
-- Create the data type
CREATE TYPE dbo.MyType AS TABLE
(
col1 int NOT NULL,
col2 varchar(20) NULL,
col3 datetime NULL,
  PRIMARY KEY (col1)
)
GO

在运行代码之后,对象的定义就建立好了,你可以在“User-Defined Table Type(用户自定义表类型”中查看属性,如图4所示,但没法修改它们。如果要修改的类型,你只能将其删除,然后按照修改后的属性再次创建它。

SQL Server 2008数据库中如何使用表值参数

图4:查看用户自定义表类型的属性

2、使用用户自定义的表类型

如果打算在T-SQL代码中使用,您还必须创建一个新类型的变量,然后将具体的表的名称赋值给该变量。一旦赋值后,您可以在其他的T-SQL语句中使用它。因为它是一个变量,在批处理完成后,它也自动失效,结束生命周期。

请注意下面的代码,MyType是我们之前刚刚创建的数据类型。

DECLARE @MyTable MyType
INSERT INTO @MyTable(col1,col2,col3)
VALUES (1,'abc','1/1/2000'),
(2,'def','1/1/2001'),
(3,'ghi','1/1/2002'),
(4,'jkl','1/1/2003'),
(5,'mno','1/1/2004')
SELECT * FROM @MyTable

在变量的有效范围内,你可以象操作正常的表一样来操作这个变量,如与另一个表象关联或者将变量中的记录填充到另一个表。对于表变量来说,你无法修改表定义。

上一页  1 2 3 4  下一页

Tags:SQL Server 数据库

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接