我已经对我的 sql 进行了一些调试,但我无法弄清楚我遇到的令人抓狂的错误,我已将其缩小到几行,我看不出问题是什么,请有人给我一些帮助。
我收到这个错误
我在这里2
消息 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()功能反而:
... ') SELECT ' + QuoteName(@cols2) + ' FROM...
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)