执行在SQL Server 2005测试
问题描述:
当我执行下列操作...执行在SQL Server 2005测试
EXEC 'DROP TABLE bkp_anish_test'
('DROP TABLE bkp_anish_test'
是一个动态生成的SQL查询)
我收到以下错误
莫非找不到存储过程'DROP TABLE bkp_anish_test'。
答
你不需要使用EXEC来运行SQL语句。在查询编辑器中,只需运行
DROP TABLE bkp_anish_test
如果表中的xyz数据库,试试这个
EXEC ('USE xyz ; DROP TABLE bkp_anish_test;');
答
而是执行此操作:
exec sp_executesql N'DROP TABLE bkp_anish_test'
或动态构建字符串的情况:
declare @MyTable nvarchar(100)
set @MyTable = N'bkp_anish_test'
declare @sql nvarchar(100)
set @sql = N'DROP TABLE ' + @MyTable
exec sp_executesql @sql
答
尝试增加括号你的命令。如果要使用EXEC命令,则必须在运行SQL语句时包含它们。
EXEC ('DROP TABLE bkp_anish_test')
如果您发布的代码或XML,** **请在高亮文本编辑器的线和编辑器工具栏上的“代码”按钮(101 010)点击很好的格式和语法高亮显示! – 2010-12-13 06:13:33