sp_tables(Transact-SQL)

업데이트: 2006년 12월 12일

현재 환경에서 쿼리할 수 있는 개체의 목록을 반환합니다. 즉, 동의어 개체를 제외하고 FROM 절에 사용될 수 있는 모든 개체가 반환됩니다.

[!참고] 동의어의 기준 개체 이름을 확인하려면 sys.synonyms 카탈로그 뷰를 쿼리합니다.

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

구문

sp_tables [ [ @table_name = ] 'name' ] 
     [ , [ @table_owner = ] 'owner' ] 
     [ , [ @table_qualifier = ] 'qualifier' ] 
     [ , [ @table_type = ] "type" ] 
     [ , [@fUsePattern = ] 'fUsePattern'];

인수

  • [ @table_name=] 'name'
    카탈로그 정보를 반환하는 데 사용하는 테이블입니다. name은 **nvarchar(384)**이며 기본값은 NULL입니다. 와일드카드 패턴 일치가 지원됩니다.
  • [ @table_owner= ] 'owner'
    카탈로그 정보를 반환하는 데 사용하는 테이블의 소유자입니다. owner는 **nvarchar(384)**이며 기본값은 NULL입니다. 와일드카드 패턴 일치가 지원됩니다. 소유자를 지정하지 않은 경우 원본으로 사용하는 DBMS의 기본 테이블 표시 유형 규칙이 적용됩니다.

    SQL Server에서는 현재 사용자가 지정된 이름의 테이블을 소유한 경우 해당 테이블의 열이 반환됩니다. 소유자를 지정하지 않았으며 현재 사용자가 지정된 이름의 테이블을 소유하고 있지 않은 경우 이 프로시저는 데이터베이스 소유자가 소유한 지정된 이름의 테이블을 찾습니다. 테이블이 있을 경우 해당 테이블의 열이 반환됩니다.

  • [ @table_qualifier= ] 'qualifier'
    테이블 한정자의 이름입니다. qualifiersysname이며 기본값은 NULL입니다. 다양한 DBMS 제품에서 테이블에 대해 세 부분으로 이루어진 이름(qualifier**.owner.**name)을 지원합니다. SQL Server에서 이 열은 데이터베이스 이름을 나타냅니다. 일부 제품에서는 테이블 데이터베이스 환경의 서버 이름을 나타냅니다.
  • [ , [ @table_type= ] "'type'" ]
    쉼표로 구분된 값 목록으로서 지정된 테이블 유형의 모든 테이블에 관한 정보를 제공합니다. 여기에는 TABLE, SYSTEMTABLEVIEW가 포함됩니다. type은 **varchar(100)**이며 기본값은 NULL입니다.

    [!참고] 각 테이블 유형은 작은따옴표로 묶고, 전체 매개 변수는 큰따옴표로 묶어야 합니다. 테이블 유형은 대문자로 표시해야 합니다. SET QUOTED_IDENTIFIER가 ON이면 모든 작은따옴표는 큰따옴표로 바꾸고 전체 매개 변수는 작은따옴표로 묶어야 합니다.

  • [ @fUsePattern = ] 'fUsePattern'
    밑줄(_), 백분율(%) 및 대괄호([ 또는 ]) 문자를 와일드카드 문자로 해석할지 여부를 결정합니다. 유효한 값은 0(패턴 일치 해제)과 1(패턴 일치 설정)입니다. fUsePatternbit이며 기본값은 1입니다.

반환 코드 값

없음

결과 집합

열 이름 데이터 형식 설명

TABLE_QUALIFIER

sysname

테이블 한정자 이름입니다. SQL Server에서 이 열은 데이터베이스 이름을 나타냅니다. 이 필드는 NULL이 될 수 있습니다.

TABLE_OWNER

sysname

테이블 소유자 이름입니다. SQL Server에서 이 열은 테이블을 만든 데이터베이스 사용자의 이름을 나타냅니다. 이 필드는 항상 값을 반환합니다.

TABLE_NAME

sysname

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

TABLE_TYPE

varchar(32)

테이블, 시스템 테이블 또는 뷰입니다.

REMARKS

varchar(254)

SQL Server는 이 열의 값을 반환하지 않습니다.

주의

상호 운용성을 최대한 높이려면 게이트웨이 클라이언트가 SQL-92-표준 SQL 패턴 일치(% 및 _ 와일드카드 문자)만 허용해야 합니다.

현재 사용자의 특정 테이블에 대한 읽기 또는 쓰기 액세스에 대한 권한 정보는 항상 확인되지는 않습니다. 그렇기 때문에 액세스는 보장되지 않습니다. 이 결과 집합은 테이블 및 뷰뿐만 아니라 이러한 유형을 지원하는 DBMS 제품으로의 게이트웨이에 대한 동의어 및 별칭을 포함합니다. sp_server_info에 대한 결과 집합에서 서버 특성인 ACCESSIBLE_TABLES가 Y인 경우 현재 사용자가 액세스할 수 있는 테이블만 반환됩니다.

sp_tables는 ODBC에서 SQLTables와 같습니다. 반환된 결과는 TABLE_TYPE, TABLE_QUALIFIER, TABLE_OWNERTABLE_NAME 순으로 정렬됩니다.

사용 권한

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

1. 현재 환경에서 쿼리 가능한 개체 목록 반환

현재 환경에서 쿼리 가능한 개체 목록 반환하려면 다음을 실행하십시오.

EXEC sp_tables ;

2. AdventureWorks의 테이블 정보 반환

다음 예에서는 AdventureWorks 데이터베이스에서 Person 스키마에 속한 테이블에 대한 정보를 반환합니다.

USE AdventureWorks;
GO
EXEC sp_tables 
   @table_name = '%',
   @table_owner = 'Person',
   @table_qualifier = 'AdventureWorks';

참고 항목

참조

카탈로그 저장 프로시저(Transact-SQL)
시스템 저장 프로시저(Transact-SQL)

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2006년 12월 12일

새로운 내용
  • sp_tables에서 동의어 개체에 대한 정보를 반환하지 않는다는 설명을 추가했습니다.