sql-server - # T-SQL sql server 2008 2005 中的 ifdef 类型条件编译

标签 sql-server sql-server-2005 tsql sql-server-2008

为了向后兼容,我需要在 sql server 2005 和 sql server 2008 上运行一个存储过程。但是,由于 sql server 2008 中不推荐使用某些命令,我​​的脚本在 2005 年编译,但在 2008 年失败。我正在寻找对于 c++、c# 来说,相当于 #define、#ifdef,这样我就可以在 2005 年和 2008 年编译相同的脚本。这方面的标准做法是什么?附上截图,详细解释。谢谢

enter image description here

最佳答案

使用动态 SQL:

if (@returnVal = 1)
    exec ('backup log myDB with truncate_only');

关于sql-server - # T-SQL sql server 2008 2005 中的 ifdef 类型条件编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6612224/

相关文章:

c# - Entity Framework Core 2.1.1 代码优先

sql - 提取不以特定单词结尾的值

sql-server - Microsoft SQL Server - 谁创建了存储过程?

sql - 如何删除插入表中标识列的重复值?

c# - 为什么我的插入表行的 SQL 查询不能正常工作?

sql - 在sql中的select查询中有条件地自动将列值增加1

SQL查询对所有表中的列进行计数

sql-server - 以特定用户身份执行 xp_cmdshell 命令

sql-server - 使用 tsql 连接到 tdsool 超时

sql - T-SQL - 按最近日期选择并按 ID 分组