我有一个正在运行的代码,但我遇到的问题是它包含许多 MERGE 子句,因为它打算从 SQL Server 2008 运行并向前运行。但问题是一个新客户正在运行 SQL Server 2005,并且您知道 Merge 子句在 SQL Server 2008 之前不可用,所以我的问题是是否没有办法自动解析 this 子句或者是否有其他解决方案(除了重写经典子句中的所有子句)因为客户不愿意升级数据库。
提前非常感谢。
我有一个正在运行的代码,但我遇到的问题是它包含许多 MERGE 子句,因为它打算从 SQL Server 2008 运行并向前运行。但问题是一个新客户正在运行 SQL Server 2005,并且您知道 Merge 子句在 SQL Server 2008 之前不可用,所以我的问题是是否没有办法自动解析 this 子句或者是否有其他解决方案(除了重写经典子句中的所有子句)因为客户不愿意升级数据库。
提前非常感谢。
恐怕您需要MERGE
为 SQL Server 2005 重新编写所有子句。
您可以使用 2005 友好output
子句来实现相同的功能,但使用更详细的 SQL。这种方法也适用于 SQL Server 2008。
http://sqlserver-tips.blogspot.co.uk/2006/09/mimicking-merge-statement-in-sql.html
您可以将 C#(或其他)应用程序放在一起来解析合并语句并从中创建插入/更新语句。我的意思是,这是一个可怕的想法,但你可以做到...
您必须拉出“ON”部分,将其添加到检查 IF EXISTS 和更新部分,然后将列列表添加到插入部分。您甚至可以以编程方式(原文如此?)创建 SP 参数和所有内容。
呵呵。祝你好运。