sql - ']'附近的语法不正确。

标签 sql sql-server tsql syntax-error ssms

我已经在sql上进行了一些调试,但是我无法弄出令人发指的错误,我将其范围缩小到几行,我看不到问题所在,请有人提供帮助。

我得到这个错误

我在这里2
Msg 102,第15级,状态1,第1行
语法不正确
']'。
我在这里3

 Print 'I am here2'
                        SET IDENTITY_INSERT c365online_script1.dbo.tCompany ON
                        declare @cols2 varchar(max)
                        select @cols2 = (Select Stuff((Select '],[' + C.COLUMN_NAME From INFORMATION_SCHEMA.COLUMNS As C Where C.TABLE_SCHEMA = T.TABLE_SCHEMA And C.TABLE_NAME = T.TABLE_NAME Order By C.ORDINAL_POSITION For Xml Path('')), 1, 2, '') As Columns From INFORMATION_SCHEMA.TABLES As T WHERE T.TABLE_NAME = @tablename)
                        EXEC('INSERT INTO [' + @Destination_Database_Name + '].[dbo].[' + @tablename + '] (' + @cols2 + ']' + ') SELECT ' + @cols2 + ']' + ' FROM [' + @Source_Database_Name + '].[dbo].[' + @tablename + ']');
                         Print 'I am here3'

最佳答案

您在这里缺少方括号:

... ') SELECT ' + @cols2 + ']' + ' FROM ...

此外,我建议您改用the QuoteName() function代替:
... ') SELECT ' + QuoteName(@cols2) + ' FROM...

关于sql - ']'附近的语法不正确。,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19729326/

相关文章:

c# - 我需要一种用于定位 SQL Server 实例的机制

sql-server - 通过 Azure 资源管理器从公共(public) blob 将 .bacpac 导入到 SQL Azure

sql-server - SQL Server 2005 中 varbinary 到文字 varchar 的复制

sql - 如何使用自连接更快地进行查询?

mysql - 为什么 MySQL LIKE 比 FULLTEXT 更快?

SQL Server表创建日期查询

sql - 合并 - 有条件 "WHEN MATCHED THEN UPDATE"

tsql - 瑞典 PC 上的程序员不能编写涉及名为 V 和 W 的变量的 T-SQL 查询吗?

mysql - SQL查询以获取多个最小值

sql - Crystal 报表 : Boolean Issues