我的程序的第三部分插件执行SQL查询(主要是select)。这些查询必须返回默认的列顺序和数量,例如:
PACKAGEID (guid), REFDATE (datetime), MODIFYDATE (datetime), PROG (int)
有时会发生某些查询忽略上面指定的列之一。为了避免程序中的进一步错误,我会执行一种检查,以确保执行的每个查询都返回默认列。
我已经使用了SQL语法SET NOEXEC ON
和SET NOEXEC OFF
,在这种情况下也可能有用。我目前正在使用SQL SERVER 2008。
任何提示?
答案 0 :(得分:1)
如果您能够将结果集放入临时表中,则可以使用以下内容轻松计算表的列数:
Select *
From tempdb.Information_Schema.COLUMNS
where TABLE_NAME like '%#temptable%'