萬千封印
2019-07-04 18:18:11
如何檢查SQLServer表中是否存在列?我需要添加一個特定的列,如果它不存在。我有如下內(nèi)容,但它總是返回false:IF EXISTS(SELECT *
FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_NAME = 'myTableName'
AND COLUMN_NAME = 'myColumnName')如何檢查SQLServer數(shù)據(jù)庫的表中是否存在列?
3 回答

瀟瀟雨雨
TA貢獻1833條經(jīng)驗 獲得超4個贊
IF EXISTS(SELECT 1 FROM sys.columns WHERE Name = N'columnName' AND Object_ID = Object_ID(N'schemaName.tableName'))BEGIN -- Column ExistsEND
IF COL_LENGTH('schemaName.tableName', 'columnName') IS NOT NULLBEGIN -- Column ExistsEND

函數(shù)式編程
TA貢獻1807條經(jīng)驗 獲得超9個贊
IF COL_LENGTH('table_name','column_name') IS NULLBEGIN/* Column does not exist or caller does not have permission to view the object */END
COL_LENGTH
COL_LENGTH('AdventureWorks2012.HumanResources.Department','ModifiedDate')
COL_LENGTH

胡子哥哥
TA貢獻1825條經(jīng)驗 獲得超6個贊
if not exists (select column_name from INFORMATION_SCHEMA.columns where table_name = 'MyTable' and column_name = 'MyColumn') alter table MyTable add MyColumn int
編輯以處理編輯到問題
添加回答
舉報
0/150
提交
取消