请教一个SQL函数

Sam830131 2012-07-11 08:23:00
SQL中有个函数叫Binary_CheckSum,这个是用来比较什么2进制什么的。

现在我用Binary_CheckSum(更新日期),那是不是意味着我对该条记录只能做一次修改呢?

因为这个更新日期变更后,通过Binary_CheckSum比较,肯定是不同了。

求指教。
...全文
85 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Sam830131 2012-07-11
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 的回复:]

引用 5 楼 的回复:

如果LZ是通过BINARY_CHECKSUM来判断选取数据的话,那么只要更新日期变化了,那BINARY_CHECKSUM值肯定也跟着改变了。

实际上BINARY_CHECKSUM函数起到了一个校验和的功能,就是用来检测数据变化的。
[/Quote]

那么是否可以这么理解,只要这个日期一变化,我下次通过这个Binary_CheckSum来校验的话,肯定就是不能再次修改了。也就是说这条记录只能被修改一次了?
孤独加百列 2012-07-11
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 的回复:]

如果LZ是通过BINARY_CHECKSUM来判断选取数据的话,那么只要更新日期变化了,那BINARY_CHECKSUM值肯定也跟着改变了。
[/Quote]
实际上BINARY_CHECKSUM函数起到了一个校验和的功能,就是用来检测数据变化的。
孤独加百列 2012-07-11
  • 打赏
  • 举报
回复
如果LZ是通过BINARY_CHECKSUM来判断选取数据的话,那么只要更新日期变化了,那BINARY_CHECKSUM值肯定也跟着改变了。
SQL77 2012-07-11
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 的回复:]
这是用来对数据加锁,防止并发的
[/Quote]
直接用UNIQUE。。。。。类型。
Sam830131 2012-07-11
  • 打赏
  • 举报
回复
这是用来对数据加锁,防止并发的
以学习为目的 2012-07-11
  • 打赏
  • 举报
回复
在表中任一行上计算的 BINARY_CHECKSUM(*) 返回相同的值,只要随后没有修改行。BINARY_CHECKSUM(*) 将为大多数(但不是全部)行更改返回不同的值,并可用于检测大多数行修改。

AcHerat 元老 2012-07-11
  • 打赏
  • 举报
回复
楼主到底想做什么。。。

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧