有没有办法包含动态SQL?

时间:2011-07-11 08:40:15

标签: sql sql-server-2005

DECLARE @SQL VARCHAR(100)
DECLARE @dbName VARCHAR(100)--  
SET @dbName = 'somedbname'--    
SET @sql = 'USE [' + @dbName + ']' + CHAR(13) + CHAR(10)
SET @sql = @sql + 'GO' + CHAR(13) + CHAR(10)--  Print the command
EXEC (@sql)

当我运行它时,它会出现错误“GO”附近的语法错误,有人找到了解决方法吗?

要求:我需要在交换数据库中包含存储过程创建。

1 个答案:

答案 0 :(得分:4)

GOnot a SQL statement - 它是 SQL Server实用程序识别的命令(例如sqlcmd,osql,SQL Server Management Studio代码编辑器)。

但是,您可以change the database without the GO command