문서를 영문으로 보려면 영문 확인란을 선택하세요. 마우스 포인터를 텍스트 위로 이동시켜 팝업 창에서 영문 텍스트를 표시할 수도 있습니다.
번역
영문

sp_column_privileges(Transact-SQL)

현재 환경 내의 단일 테이블에 대한 열 권한 정보를 반환합니다.

항목 링크 아이콘 Transact-SQL 구문 표기 규칙

sp_column_privileges [ @table_name = ] 'table_name' 
     [ , [ @table_owner = ] 'table_owner' ] 
     [ , [ @table_qualifier = ] 'table_qualifier' ] 
     [ , [ @column_name = ] 'column' ]

[ @table_name= ] 'table_name'

카탈로그 정보를 반환하는 데 사용되는 테이블입니다. table_namesysname이며 기본값은 없습니다. 와일드카드 패턴 일치는 지원되지 않습니다.

[ @table_owner= ] 'table_owner'

카탈로그 정보를 반환하는 데 사용하는 테이블의 소유자입니다. table_ownersysname이며 기본값은 NULL입니다. 와일드카드 패턴 일치는 지원되지 않습니다. table_owner를 지정하지 않은 경우에는 기본 DBMS(데이터베이스 관리 시스템)의 기본 테이블 표시 규칙이 적용됩니다.

현재 사용자가 지정한 이름의 테이블을 소유하고 있는 경우 해당 테이블의 열이 반환됩니다. table_owner가 지정되지 않았고 현재 사용자가 지정된 table_name의 테이블을 소유하고 있지 않은 경우 sp_column privileges는 데이터베이스 소유자가 소유한 지정된 table_name의 테이블을 찾습니다. 테이블이 있으면 테이블의 열이 반환됩니다.

[ @table_qualifier= ] 'table_qualifier'

테이블 한정자의 이름입니다. table_qualifiersysname이며 기본값은 NULL입니다. 다양한 DBMS 제품에서 테이블에 대해 세 부분으로 구성된 이름(qualifier.owner.name)을 지원합니다. SQL Server에서 이 열은 데이터베이스 이름을 나타냅니다. 일부 제품에서는 테이블 데이터베이스 환경의 서버 이름을 나타냅니다.

[ @column_name= ] 'column'

카탈로그 정보 중 한 열만 확보될 때 사용되는 단일 열입니다. columnnvarchar(384)이며 기본값은 NULL입니다. column을 지정하지 않으면 모든 열이 반환됩니다. SQL Server에서 column은 sys.columns 테이블에 나열된 열 이름을 나타냅니다. column은 기본 DBMS의 와일드카드 일치 패턴을 사용하는 와일드카드 문자를 포함할 수 있습니다. 상호 운용성을 극대화하려면 게이트웨이 클라이언트에서 ISO 표준 패턴 일치(% 및 _ 와일드카드 문자)만 사용해야 합니다.

sp_column_privileges는 ODBC의 SQLColumnPrivileges와 동일합니다. 반환되는 결과는 TABLE_QUALIFIER, TABLE_OWNER, TABLE_NAME, COLUMN_NAME 및 PRIVILEGE에 의해 순서가 정해집니다.

열 이름

데이터 형식

설명

TABLE_QUALIFIER

sysname

테이블 한정자 이름입니다. 이 필드는 NULL이 될 수 있습니다.

TABLE_OWNER

sysname

테이블 소유자 이름입니다. 이 필드는 항상 값을 반환합니다.

TABLE_NAME

sysname

테이블 이름입니다. 이 필드는 항상 값을 반환합니다.

COLUMN_NAME

sysname

반환된 TABLE_NAME의 각 열에 대한 열 이름입니다. 이 필드는 항상 값을 반환합니다.

GRANTOR

sysname

나열된 GRANTEE에 대해 이 COLUMN_NAME에 대한 권한을 부여한 데이터베이스 사용자 이름입니다. SQL Server에서 이 열은 항상 TABLE_OWNER와 같습니다. 이 필드는 항상 값을 반환합니다.

GRANTOR 열은 데이터베이스 소유자(TABLE_OWNER) 또는 데이터베이스 소유자가 GRANT 문의 WITH GRANT OPTION 절을 사용하여 사용 권한을 부여한 사용자가 될 수 있습니다.

GRANTEE

sysname

나열된 GRANTOR에 의해 이 COLUMN_NAME에 대한 사용 권한을 부여 받은 데이터베이스 사용자 이름입니다. SQL Server에서 이 열은 항상 sysusers 테이블의 데이터베이스 사용자 한 명을 포함합니다. 이 필드는 항상 값을 반환합니다.

PRIVILEGE

varchar( 32)

사용할 수 있는 열 사용 권한 중 하나입니다. 열 사용 권한은 다음 값(또는 구현이 정의될 때 데이터 원본이 지원하는 다른 값) 중 하나일 수 있습니다.

SELECT = GRANTEE는 열에 대한 데이터를 검색할 수 있습니다.

INSERT = GRANTEE는 GRANTEE에 의해 새 행이 테이블에 삽입될 때 이 열에 대한 데이터를 제공할 수 있습니다.

UPDATE = GRANTEE는 열의 기존 데이터를 수정할 수 있습니다.

REFERENCES = GRANTEE는 기본 키/외래 키 관계에 있는 외래 테이블의 열을 참조할 수 있습니다. 기본 키/외래 키 관계는 테이블 제약 조건을 사용하여 정의됩니다.

IS_GRANTABLE

varchar( 3)

GRANTEE가 다른 사용자에게 권한을 부여할 수 있도록 허용할지 여부를 나타냅니다. 이것을 "권한 부여 권한"이라고도 합니다. YES, NO 또는 NULL이 될 수 있습니다. 알 수 없는 값(또는 NULL)은 "권한 부여 권한"을 적용할 수 없는 데이터 원본을 의미합니다.

SQL Server의 경우 GRANT 문으로 사용 권한을 부여하고 REVOKE 문으로 사용 권한을 제거합니다.

스키마에 대한 SELECT 권한이 필요합니다.

다음 예에서는 특정 열에 대한 열 권한 정보를 반환하는 방법을 보여 줍니다.

USE AdventureWorks2012;
GO
EXEC sp_column_privileges @table_name = 'Employee' 
    ,@table_owner = 'HumanResources'
    ,@table_qualifier = 'AdventureWorks2012'
    ,@column_name = 'SalariedFlag';

커뮤니티 추가 항목

추가
표시: