本站首页    管理页面    写新日志    退出


«August 2025»
12
3456789
10111213141516
17181920212223
24252627282930
31


公告

戒除浮躁,读好书,交益友


我的分类(专题)

日志更新

最新评论

留言板

链接

Blog信息
blog名称:邢红瑞的blog
日志总数:523
评论数量:1142
留言数量:0
访问次数:9691969
建立时间:2004年12月20日




[数据库]MSSQL7中吓人一身冷汗的BUG
文章收藏

邢红瑞 发表于 2005/8/3 12:58:49

在MSSQL7.0中用查询分析器选择NorthWind数据库,复制粘贴下面的一条语句执行:update Orders set CustomerID='HANAR',EmployeeID=4 where OrderID='10250'看看执行结果,也许你会吓出一身冷汗!!!因为执行结果是修改了830行记录,这830行记录的CustomerID字段都改成了'HANAR'。为什么呢?大家注意上面那条语句中间的逗号,那不是一个简单的逗号,而是一个中文的逗号。就是这个致命的中文逗号,导致了从逗号以后的语句全被忽略,而且执行并未报错。(用Delphi等开发工具编制数据库程序,一样会碰到这个问题)实际执行的语句就变成了update Orders set CustomerID='HANAR'所以在使用MSSQL7.0的朋友一定要特别注意了,不然这个BUG导致的错误一定会让你欲哭无泪!『注:此BUG只在 MSSQL 7.0 版本中存在,MSSQL2000已经修正此问题』我使用的MSSQL 7.0 未使用任何升级补丁,所以MSSQL 7.0 的升级补丁是否修正了此BUG我并未测试,请大家自己测试。


阅读全文(3195) | 回复(0) | 编辑 | 精华
 



发表评论:
昵称:
密码:
主页:
标题:
验证码:  (不区分大小写,请仔细填写,输错需重写评论内容!)



站点首页 | 联系我们 | 博客注册 | 博客登陆

Sponsored By W3CHINA
W3CHINA Blog 0.8 Processed in 0.297 second(s), page refreshed 144763242 times.
《全国人大常委会关于维护互联网安全的决定》  《计算机信息网络国际联网安全保护管理办法》
苏ICP备05006046号