Я проделал некоторую отладку на моем sql, и я не могу понять, сбойная ошибка, которую я получаю. Я сузил ее до нескольких строк, которые я не вижу, в чем проблема, пожалуйста, помогите мне.Неверный синтаксис рядом с ']'.?
Я получаю эту ошибку
I Am Msg здесь 2 102, уровень 15, состояние 1, строка 1 Неправильный синтаксис около ']'. Я here3
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'
Вместо того, чтобы просто слепо 'EXEC'ing любой SQL вы производите, вы можете изменить его на' PRINT' вместо и * см *, что SQL вы пытаетесь запустить. Это будет намного быстрее, чем сделать настройку, запустить код, получить сообщение об ошибке, отправить в SO, а затем надеяться, что кто-то сможет диагностировать проблему, не увидев SQL. Даже если вы не можете решить это самостоятельно, будучи в состоянии * показать * нам, какой SQL, который вы создаете, должен сделать обратную связь намного быстрее. –