У меня есть проблема с динамическим SQL (да только один;))Dynamic SQL - почему переменная остается пустой
Внутри хранимой процедуры я объявил локальную переменную так:
DECLARE @cmd NVARCHAR (макс) Позже в коде у меня есть эта линия с большим количеством входных параметров мой зр получил (извините за беспорядок не удалось организовать его):
SET @cmd = 'INSERT INTO dbo.' + @ArchiveTableName + '(' + @ArchiveFieldsName + ',' + @ArchiveEntityMainIdentifierField + ')
SELECT ' + @EntityFieldsName + ',' + '' + @EntityMainIdentifierField + '' +
' FROM [' + @OrganizationName + '].[dbo].[' + @EntityName + '] ent
left join dbo.' + @ArchiveTableName + ' arc on arc.' + @ArchiveEntityMainIdentifierField + ' = ent.' + @EntityMainIdentifierField + '
where ent.' + @EntityMainIdentifierField + ' = ''' + @ParentId + ''' and arc.' + @ArchiveEntityMainIdentifierField + ' is null'
После того как я отлажена, я нашел что-то странное. После запуска этого @cmd остается пустым.
Может кто-нибудь, пожалуйста, дать мне понять, почему это может произойти?
Если одна переменная '' NULL', то вся строка станет 'NULL' –
oh did not знает ее, я проверю ее сейчас. –
yep thats вещь, спасибо! –