您可能会注意到 Halloween problem,如果使用不当,SQL游标可能会成为您的噩梦。SQL 2005 T-SQL编程 - 可能需要注意的缺陷
如果不小心使用SQL 2005功能,可能会引入的其他细微问题(难以调试和检测)是什么?
您可能会注意到 Halloween problem,如果使用不当,SQL游标可能会成为您的噩梦。SQL 2005 T-SQL编程 - 可能需要注意的缺陷
如果不小心使用SQL 2005功能,可能会引入的其他细微问题(难以调试和检测)是什么?
首先不应该使用游标,除非绝对没有其他方式来执行它。几乎所有事情都可以基于集合来完成。数字表将有助于这一点。 检查XACT_STATE注定事务。还有更多的事情需要注意的
试图把SQL就像一个编程环境可能是最大的错误。 SQL是关于声明你想要的。如果你正在使用的游标或循环结构,问问自己,如果有,你可以将它转换为INSERT/UPDATE
有许多的问题浮现在脑海:
NULL有它的地方 - 当它真的意味着没有选择或值 - 但在很多情况下,你可能更好的定义一个默认值(在INT列通常为“0”),这将代表“没有”或“未做出选择”等。
而且还与索引 - 如果你使用T-SQL函数在WHERE子句中,像 “UPPER(myCol)=(值)” 或 “LEFT(myCol,10)=(值)”,然后你也不会从索引中看到预期的好处。
索引可以大大提高你的表现 - 但指数明智!