SQL Server 2005 数据类型及相关知识全解析
1. 主键与代理键
使用 GUID 作为主键来构建代理键,与使用标识列效果相当,特别是对于带有聚集索引的情况。新值会添加到索引末尾,而非随机分布在索引中。不过, uniqueidentifier
类型的列大小是整数列的四倍,需要四倍的存储空间。
2. 游标(Cursor)
游标是一种允许按行操作的机制,而非常规的按集合操作。 cursor
数据类型用于保存对 SQL Server T - SQL 游标的引用,不能作为表中的列,仅用于 T - SQL 代码中保存游标引用。
3. 表数据类型(Table)
- 特点 :
table
数据类型与cursor
有一些共同点,用于保存结果集的引用。它实际上是将结果集存储为临时表,但无法获取该表的统计信息,除了在表声明中应用PRIMARY KEY
和UNIQUE
约束外,不能对其进行索引。与本地临时表不同,使用table
数据类型变量的存储过程不会重新编译,因为它没有统计信息来改变执行计划。通常仅用于存储少量数据(一般为数百行,而非数千行),例如数据能存放在单个数据页时。 - 示例代码
-- 声明表变量
DECLARE @table