我正在将数据库从MS SQL Server 2008迁移到MS SQL Server 2012.我听说2012版本中的TRANSACT SQL语句需要在每个语句的末尾加一个分号。由于无法逐个修改每个sql文件,是否有任何解析器或附加功能可用于纠正此问题?
如果有任何其他选项可用于此要求,请与我们联系。
答案 0 :(得分:1)
分号,它是与标准SQL语言相关的“建议”;标准的SQL语言表示你应该用分号终止语句。
对于2008和2008R2也是如此:您应该终止陈述(如果您要编写符合标准的陈述),如果您选择,您可以这样做。
它不是强制性的,但仍然不是强制性的;你可以用SQL标准建议用分号终止,但这是你的选择。
有一些例外,如CTE语句或合并语句;几乎所有其他状态的终止都是可选的。
不要因为'我听说过......'而开始工作。
答案 1 :(得分:1)
根据Deprecated Database Engine Features in SQL Server 2014,分号的强制要求推迟到SQL Server的未来版本,尚未命名。
老实说,我真的无法看到他们真正拉动这个触发器,正是因为你遇到的原因。不使用分号太过根深蒂固,并且绝对是一个破坏性的交易。