如何测试表中特定字段集的存在

时间:2015-02-05 16:52:17

标签: sql sql-server tsql field

我希望能够测试一个表是否有一组特定的字段(我只是为了进行名称比较而结算;当然,类型/长度/等可能已被更改)。我看到测试单个字段的存在并不困难,但我正在处理的表有大约80个字段,我希望不必经历每个字段。

此处的主要目标是在代码中执行完整性检查,以确认表格未被更改,因此在复制记录时,不会遗漏任何字段。

2 个答案:

答案 0 :(得分:0)

我相信你的查询应该是

SELECT count(*)
 FROM DatabaseName.INFORMATION_SCHEMA.COLUMNS
 WHERE TABLE_NAME = N'TableName' and COLUMN_NAME='YourColumnName'

如果count> 0,那么它存在

答案 1 :(得分:0)

if
(SELECT ORDINAL_POSITION 
FROM information_schema.columns
WHERE TABLE_CATALOG='your_db' 
AND 
TABLE_NAME='YOUR_TABLE' 
AND 
COLUMN_NAME='COLUMN_NAME')>0
..