SQL UNIQUEIDENTIFIER
当你正在处理被多个站点(像在跨国公司条件下)使用的大数据库时,你也许会遇到保证表格对象唯一性这样的棘手问题。在这种情形下,可能只能靠UNIQUEIDENTIFIER来解决。UNIQUEIDENTIFIER是一个保存全局唯一标识符的GUID数据类型。GUID是一个保证唯一的二进制数,因此几乎没有别的计算机会产生同一个值。
GUID的唯一值是由计算机网卡的标识数加上一个CPU时钟产生的唯一数而得到的。网卡制造商至少在下一个100年内能保证网卡的唯一性。
UNIQUEIDENTIFIER值不能像IDENTITY属性那样自动产生。要想为你的表格对象产生UNIQUEIDENTIFIER值,你必须指定NEWID函数为column的缺省值。
例如,如果你想要创建一个表格列出你的跨国公司的所有子公司的尖端产品的收入,并且你希望指定一个GUID数据类型,那么你可以键入:
CREATE TABLE NetRevenueTable
(UniqueColumn UNIQUEIDENTIFIER DEFAULT NEWID(),
Characters VARCHAR(10))
在数据库工具中,你要在数据库图表中或当你正在设计一个表格时做这件事情。为你想唯一确定的column选择Is RowGUID。缺省情况将是(newid()),它自动产生RowGUID。
尽管在许多情况下你必须保证表格对象的唯一性,但是如果你决定使用UNIQUEIDENTIFIER数据类型,请注意以下特性:
这些值是长而且难懂的。
这些值是随机的,不带有对用户有意义的样式。
这些值在依靠连续增加的值的应用程序中很难使用。
这些值有16字节,很大,因此用这些钥匙构建索引会更慢。
相关文档:
1 PLS_INTEGER
PLS_INTEGER可以存储一个有符号的整形值,其精度范围和BINARY_INTEGER一样,是:-2^31~2^31。
PLS_INTEGER和NUMBER比较起来,其优点是:
1).占有较少的存储空间;
2).可以直接进行算术运算(在NUMBER上不能直接进行算术运算,如果要计算,NUMBER必须先被转换成二进制)。所以在进行算术的时候PLS_INTEGER ......
Sql Server中的日期与时间函数
1. 当前系统日期、时间
select getdate()
2. dateadd 在向指定日期加上一段时间的基础上,返回新的 datetime 值
例如:向日期加上2天
sele ......
简单谈基于SQL SERVER 分页存储过程的演进
作者:郑佐
日期:2006-9-30
针对数据库数据在UI界面上的分页是老生常谈的问题了,网上很容易找到各种“通用存储过程”代码,而且有些还定制查询条件,看上去使用很方便。笔者打算通过本文也来简单谈一下基于SQL SERVER 2000的分页存储过程,同时谈谈SQL SER ......