我有动态sql的问题(是的只有一个;))
在内存存储过程中,我声明了一个像这样的局部变量:
DECLARE @cmd nvarchar(max) 在代码的后面,我有一行输入参数,我接收了很多输入参数(很抱歉这个混乱没有成功组织它):
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保持为空。
有人可以告诉我为什么会这样吗?