프로그래밍 언어/Database

SQL Server 테이블에 열이 있는지 확인하는 방법

Rateye 2021. 6. 6. 11:11
728x90
반응형
질문 : SQL Server 테이블에 열이 있는지 확인하는 방법은 무엇입니까?

특정 열이없는 경우 추가해야합니다. 다음과 같은 것이 있지만 항상 false를 반환합니다.

IF EXISTS(SELECT *
          FROM   INFORMATION_SCHEMA.COLUMNS
          WHERE  TABLE_NAME = 'myTableName'
                 AND COLUMN_NAME = 'myColumnName')

SQL Server 데이터베이스의 테이블에 열이 있는지 어떻게 확인할 수 있습니까?

답변

SQL Server 2005 이상 :

IF EXISTS(SELECT 1 FROM sys.columns 
          WHERE Name = N'columnName'
          AND Object_ID = Object_ID(N'schemaName.tableName'))
BEGIN
    -- Column Exists
END

Martin Smith의 버전이 더 짧습니다.

IF COL_LENGTH('schemaName.tableName', 'columnName') IS NOT NULL
BEGIN
    -- Column Exists
END
출처 : https://stackoverflow.com/questions/133031/how-to-check-if-a-column-exists-in-a-sql-server-table
728x90
반응형