sys.columns(Transact-SQL)

적용 대상: Microsoft Fabric의 Microsoft FabricWarehouse에 있는 SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsPlatform System(PDW) SQL 분석 엔드포인트

뷰 또는 테이블과 같이 열을 갖고 있는 개체의 각 열에 대한 행을 반환합니다. 다음은 열이 있는 개체 형식 목록입니다.

  • FT(테이블 반환 어셈블리 함수)

  • 인라인 테이블 반환 SQL 함수(IF)

  • IT(내부 테이블)

  • 시스템 테이블(S)

  • 테이블 반환 SQL 함수(TF)

  • 사용자 테이블(U)

  • 보기(V)

열 이름 데이터 형식 설명
object_id int 이 열이 속한 개체의 ID입니다.
name sysname 열의 이름입니다. 개체 내에서 고유합니다.
column_id int 열의 ID입니다. 개체 내에서 고유합니다.

열 ID는 순차적이지 않을 수 있습니다.
system_type_id tinyint 열의 시스템 유형 ID입니다.
user_type_id int 사용자가 정의한 열 형식의 ID입니다.

유형의 이름을 반환하려면 이 열에서 sys.types 카탈로그 뷰에 조인합니다.
max_length smallint 열의 최대 길이(바이트)입니다.

-1 = 열 데이터 형식이 varchar(max), nvarchar(max), varbinary(max) 또는 xml입니다.

text, ntextimage 열의 경우 max_length 값은 16(16 바이트 포인터만 표시)이거나 sp_tableoption 'text in row'로 설정된 값입니다.
자릿수 tinyint 숫자 기반일 경우에는 열의 전체 자릿수이고, 그렇지 않으면 0입니다.
scale tinyint 숫자 기반인 경우 열의 소수 자릿수입니다. 그렇지 않으면 0입니다.
collation_name sysname 문자 기반일 경우에는 열의 데이터 정렬 이름이고, 그렇지 않으면 NULL입니다.
is_nullable bit 1 = 열이 Null 값을 허용합니다.
is_ansi_padded bit 1 = 열은 문자, 이진 또는 변형인 경우 ANSI_PADDING ON 동작을 사용합니다.

0 = 열이 문자, 이진 또는 변형이 아닙니다.
is_rowguidcol bit 1 = 열이 선언된 ROWGUIDCOL입니다.
is_identity bit 1 = 열에 ID 값이 있습니다.
is_computed bit 1 = 열이 계산 열입니다.
is_filestream bit 1 = 열이 FILESTREAM 열입니다.
is_복제본(replica)ted bit 1 = 복제된 열입니다.
is_non_sql_subscribed bit 1 = 열에 SQL Server가 아닌 구독자가 있습니다.
is_merge_published bit 1 = 열이 병합 게시됩니다.
is_dts_복제본(replica)ted bit 1 = SSIS를 사용해 복제된 열입니다.
is_xml_document bit 1 = 콘텐츠가 전체 XML 문서입니다.

0 = 내용이 문서 조각이거나 열 데이터 형식이 xml이 아닙니다.
xml_collection_id int 열의 데이터 유형이 xml이고 XML이 입력되면 이 값은 0이 아닙니다. 값은 열의 유효성 검사 XML 스키마 네임스페이스를 포함하는 컬렉션의 ID입니다.

0 = XML 스키마 컬렉션이 없습니다.
default_object_id int 독립 실행형 개체인 sys.sp_bindefault인지, 또는 인라인 열 수준 DEFAULT 제약 조건인지 여부에 관계 없이 기본 개체의 ID입니다. 인라인 열 수준 기본 개체의 parent_object_id 열은 테이블 자체에 대한 역참조입니다.

0 = 기본값이 없습니다.
rule_object_id int sys.sp_bindrule을 사용하여 열에 바인딩된 독립 실행형 규칙의 ID입니다.

0 = 독립 실행형 규칙이 없습니다. 열 수준 CHECK 제약 조건은 sys.check_constraints(Transact-SQL)를 참조하세요.
is_sparse bit 1 = 열이 스파스 열입니다. 자세한 내용은 스파스 열 사용을 참조하세요.
is_column_set bit 1 = 열이 열 집합입니다. 자세한 내용은 스파스 열 사용을 참조하세요.
generated_always_type tinyint 적용 대상: SQL Server 2016(13.x) 이상, SQL Database. 5, 6, 7, 8은 SQL Database에만 적용됩니다.

열 값이 생성되는 시점을 식별합니다(시스템 테이블의 열에 대해서는 항상 0이 됩니다).

0 = NOT_APPLICABLE
1 = AS_ROW_START
2 = AS_ROW_END
5 = AS_TRANSACTION_ID_START
6 = AS_TRANSACTION_ID_END
7 = AS_SEQUENCE_NUMBER_START
8 = AS_SEQUENCE_NUMBER_END

자세한 내용은 임시 테이블(관계형 데이터베이스)을 참조하세요.
generated_always_type_desc nvarchar(60) 적용 대상: SQL Server 2016(13.x) 이상, SQL Database.

's 값에 대한 텍스트 설명(시스템 테이블의 generated_always_type열에 대해 항상 NOT_APPLICABLE)

NOT_APPLICABLE
AS_ROW_START
AS_ROW_END

적용 대상: SQL Server 2022(16.x), SQL Database부터

AS_TRANSACTION_ID_START
AS_TRANSACTION_ID_END
AS_SEQUENCE_NUMBER_START
AS_SEQUENCE_NUMBER_END
encryption_type int 적용 대상: SQL Server 2016(13.x) 이상, SQL Database.

암호화 유형:

1 = 결정적 암호화

2 = 임의 암호화
encryption_type_desc nvarchar(64) 적용 대상: SQL Server 2016(13.x) 이상, SQL Database.

암호화 유형 설명:

RANDOMIZED

결정적
encryption_algorithm_name sysname 적용 대상: SQL Server 2016(13.x) 이상, SQL Database.

암호화 알고리즘의 이름입니다.

AEAD_AES_256_CBC_HMAC_SHA_512만 지원됩니다.
column_encryption_key_id int 적용 대상: SQL Server 2016(13.x) 이상, SQL Database.

CEK의 ID입니다.
column_encryption_key_database_name sysname 적용 대상: SQL Server 2016(13.x) 이상, SQL Database.

열의 데이터베이스와 다른 경우 열 암호화 키가 있는 데이터베이스의 이름입니다. 키가 열과 동일한 데이터베이스에 있으면 NULL입니다.
is_hidden bit 적용 대상: SQL Server 2016(13.x) 이상, SQL Database.

열이 숨겨지는지 여부를 나타냅니다.

0 = 일반적인 숨겨지지 않고 표시된 열

1 = 숨겨진 열
is_masked bit 적용 대상: SQL Server 2016(13.x) 이상, SQL Database.

열이 동적 데이터 마스킹으로 마스킹되는지 여부를 나타냅니다.

0 = 일반적인 마스킹되지 않은 열

1 = 열이 마스킹됨
graph_type int 값 집합이 있는 내부 열입니다. 값은 그래프 열의 경우 1~8이고 다른 열의 경우 NULL입니다.
graph_type_desc nvarchar(60) 값 집합이 있는 내부 열입니다
is_data_deletion_filter_column bit 적용 대상: Azure SQL Edge. 열이 테이블의 데이터 보존 필터 열인지 여부를 나타냅니다.
ledger_view_column_type tinyint 적용 대상: SQL Server 2022(16.x), SQL Database부터.

NULL이 아닌 경우 원장 보기의 열 형식을 나타냅니다.

1 = TRANSACTION_ID
2 = SEQUENCE_NUMBER
3 = OPERATION_TYPE
4 = OPERATION_TYPE_DESC

데이터베이스 원장에 관한 자세한 내용은 원장을 참조하세요.
ledger_view_column_type_desc nvarchar(60) 적용 대상: SQL Server 2022(16.x), SQL Database부터.

NULL이 아닌 경우 원장 보기의 열 형식에 대한 텍스트 설명을 포함합니다.

TRANSACTION_ID
SEQUENCE_NUMBER
OPERATION_TYPE
OPERATION_TYPE_DESC
is_dropped_ledger_table_column bit 적용 대상: SQL Server 2022(16.x), SQL Database부터.

삭제된 원장 테이블 열을 나타냅니다.

사용 권한

카탈로그 뷰에서 메타데이터의 표시 유형은 사용자가 소유하거나 사용자에게 일부 권한이 부여된 보안 개체로 제한됩니다. 자세한 내용은 Metadata Visibility Configuration을 참조하세요.

참고 항목

시스템 뷰(Transact-SQL)
개체 카탈로그 뷰(Transact-SQL)
카탈로그 뷰(Transact-SQL)
SQL Server 시스템 카탈로그 쿼리 FAQ
sys.all_columns(Transact-SQL)
sys.system_columns(Transact-SQL)