TSQL从列可能不存在的临时表中插入

时间:2015-10-15 23:57:52

标签: c# mysql sql tsql ado.net

所以我试图从一个表插入另一个表,因为我正在使用我正在处理的软件的多个版本,我想插入的temptable可能没有我需要插入的列从,所以我写了下面的case语句来处理这个问题:

select CASE 
    WHEN EXISTS (select * 
                 from tempdb.INFORMATION_SCHEMA.COLUMNS 
                 where table_name like '#tempStatusTable%' 
                   and COLUMN_NAME like '%EmploymentType%') 
    THEN [EmploymentType]
    ELSE -1 
    END
FROM #tempStatusTable t

但是这会导致错误:

  

无效的列名称'EmploymentType'

有没有办法在SQL中做这种事情?

1 个答案:

答案 0 :(得分:0)

谢谢@ lad2025

sp_executesql允许你做任何你想做的事情,这样你就可以执行这样的块。