首页 ┆网站地图 ┆游戏资讯 ┆天龙八部 ┆资源下载 ┆淘宝网购物 ┆淘宝数码产品 ┆淘宝数码相机 
设为首页
加入收藏
联系我们
高级搜索
您当前的位置: 主页 > 数据库 > SQL库 > 数据库怎么利用timestamp时间戳处理并发
数据库怎么利用timestamp时间戳处理并发
来源: 发布时间:2010-12-24 浏览:人次  字体:[  

数据库怎么利用timestamp时间戳处理并发,公开数据库中自动生成的唯一二进制数字的数据类型。timestamp 通常用作给表行加版本戳的机制。存储大小为 8 个字节。

备注

每个数据库都有一个计数器,当对数据库中包含 timestamp 列的表执行插入或更新操作时,该计数器值就会增加。该计数器是数据库时间戳。这可以跟踪数据库内的相对时间,而不是时钟相关联的实际时间。一个表只能有一个 timestamp 列。每次修改或插入包含 timestamp 列的行时,就会在 timestamp 列中插入增量数据库时间戳值。这一属性使 timestamp 列不适合作为键使用,尤其是不能作为主键使用。对行的任何更新都会更改 timestamp 值,从而更改键值。如果该列属于主键,那么旧的键值将无效,进而引用该旧值的外键也将不再有效。如果该表在动态游标中引用,则所有更新均会更改游标中行的位置。如果该列属于索引键,则对数据行的所有更新还将导致索引更新。

使用某一行中的 timestamp 列可以很容易地确定该行中的任何值自上次读取以后是否发生了更改。如果对行进行了更改,就会更新该时间戳值。如果没有对行进行更改,则该时间戳值将与以前读取该行时的时间戳值一致。若要返回数据库的当前时间戳值,请使用 @@DBTS。

Transact-SQL timestamp 数据类型不同于在 SQL-2003 标准中定义的 timestamp 数据类型。SQL-2003 timestamp 数据类型等同于 Transact-SQL datetime 数据类型。

rowversion 的数据类型为 timestamp 数据类型的同义词,并具有数据类型同义词的行为。在 DDL 语句,请尽量使用 rowversion 而不是 timestamp。有关详细信息,请参阅 数据类型同义词 (Transact-SQL)。

在 CREATE TABLE 或 ALTER TABLE 语句中,不必为 timestamp 数据类型指定列名,例如:

 复制代码
CREATE TABLE ExampleTable (PriKey int PRIMARY KEY, timestamp);
 

如果不指定列名,则 Microsoft SQL Server 2005 Database Engine 将生成 timestamp 列名;但 rowversion 同义词不具有这样的行为。在使用 rowversion 时,必须指定列名。

注意: 
在使用其中的 SELECT 列表中具有 timestamp 列的 SELECT INTO 语句时,可能会生成重复的时间戳值。建议不要以这种方式使用 timestamp。
 
-----------------------------------
@@DBTS

备注
@@DBTS 返回当前数据库最后使用的时间戳值。插入或更新包含 timestamp 列的行时,将产生一个新的时间戳值。

返回类型
varbinary

示例
以下示例从 AdventureWorks 数据库返回当前的 timestamp。

 复制代码
USE AdventureWorks;
GO
SELECT @@DBTS
 

不可为空的 timestamp 列在语义上等同于 binary(8) 列。可为空的 timestamp 列在语义上等同于 varbinary(8) 列。


 
相 关 文 章 发布商链接
·SQL取出每个产品的Top n条记录代码
·sql语句实现根据字段删除重复行代码
·利用计划任务定时备份Express2005数...
·SQL过滤空字段只显示有字的语句示例
·sql2000还原数据库报设备激活错误的...
·SQL2005怎么恢复只有mdf的库文件?
·深入分析SQL Server表的主键
·sqlserver时间格式使用总结精
·sql查询分析器设置快捷键提高开发效...
·图解Sql2005创建分区表的全过程
 §最新评论:(评论内容只代表网友观点,与本站立场无关!)淘宝店铺一条街淘宝运动鞋淘宝网热门男装
网名:  验证码:  【所有评论】【↑返回顶部
评 分:12345
评论内容:(不能超过500字,请自觉遵守互联网相关政策法规。[按 Ctrl+Enter 可直接提交]
注意:请勿在本站发布政治话题、色情及违反法律的内容。
IT知道网 声明:刊登此文章是为了传递更多信息,文章内容仅供参考,转载请注明出处。
推 荐 文 章
·图解Sql2005创建分区表的全过...
·sqlserver怎么在远程服务器创...
·SQL2008如何创建定时作业?
·Sql2008如何使用自定义表类型
·SQl查找表中含有NULL值的字段
·SQL2005如何实现自定义分组的
·SQL2005利用vbscript实现数据
·图解Sql2000的数据库备份文件
·Sql获取当前日期是星期几的代
·sql将其他进制数转化为二进制
·SQL实现按小时分组统计查询代
·SQL语句如何实现按月分组统计
推 荐 主 题
java专题.net开发php学习
数据库windows7Word技巧
天龙八部QQ技巧IT职场
javascriptPhotoShop 淘宝购物
图 文 推 荐
SQL2005系统触发器定制相关审计表SQL2005系统触发器定制相关审计表
sql2005判断字符出现次数代码sql2005判断字符出现次数代码
SQL2008实现数据导出为脚本的过程SQL2008实现数据导出为脚本的过程
热 门 文 章
·超详细图解sql2005安装全过程
·图解SQL2008安装向导的使用
·安装SQL2005提示:找不到任何...
·sql2005开发版:选择的功能中...
·图解Sql2000的数据库备份文件...
·sql排序规则的简介及其修改操...
·实现Excel数据导入到SQL2005...
·SQL数据库置疑的原因和解决方...
·sql2000与sql2005数据如何互...
·带输入输出参数的存储过程介...
·sql精确查询2个时间范围内的...
·sql多行转为一列的合并问题,...
热 门 关 键 字
 网站首页 - 关于本站 - 加入收藏 - 网站地图 - 淘宝购物 - 在线留言 - 广告服务 - 返回顶部
Copyright © 2007 IT知道网.[冀ICP备07026896号]. All Rights Reserved .