다음을 통해 공유


sp_help(Transact-SQL)

적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance

데이터베이스 개체(호환성 보기에 sys.sysobjects 나열된 모든 개체), 사용자 정의 데이터 형식 또는 데이터 형식에 대한 정보를 보고합니다.

Transact-SQL 구문 표기 규칙

구문

sp_help [ [ @objname = ] N'objname' ]
[ ; ]

인수

[ @objname = ] N'objname'

테이블의 모든 개체 이름 sys.sysobjects 또는 사용자 정의 데이터 형식입니다 sys.systypes . @objname 기본값NULL인 nvarchar(776)입니다. 데이터베이스 이름은 허용되지 않습니다. 두 세 부분 이름(예: Person.AddressType 또는 [Person].[AddressType].)으로 구분될 수 있습니다.

반환 코드 값

0(성공) 또는 1(실패).

결과 집합

반환되는 결과 집합은 @name 지정 여부, 지정 시기 및 데이터베이스 개체에 따라 달라집니다.

  1. 인수 없이 실행되는 경우 sp_help 현재 데이터베이스에 있는 모든 형식의 개체에 대한 요약 정보가 반환됩니다.

    열 이름 데이터 형식 설명
    Name nvarchar(128) Object name
    Owner nvarchar(128) 개체 소유자(개체를 소유하는 데이터베이스 보안 주체입니다. 기본값은 개체를 포함하는 스키마의 소유자입니다.)
    Object_type nvarchar(31) Object type
  2. @name SQL Server 데이터 형식 또는 사용자 정의 데이터 형식 sp_help 인 경우 이 결과 집합을 반환합니다.

    열 이름 데이터 형식 설명
    Type_name nvarchar(128) 데이터 형식 이름입니다.
    Storage_type nvarchar(128) SQL Server 유형 이름입니다.
    Length smallint 데이터 형식의 실제 길이(바이트)입니다.
    Prec int 전체 자릿수(총 자릿수)입니다.
    Scale int 소수점 이하 자릿수입니다.
    Nullable varchar(35) 값이 허용되는지 여부를 NULL 나타냅니다. Yes No
    Default_name nvarchar(128) 이 형식에 바인딩된 기본값의 이름입니다.

    NULL = 기본값이 바인딩되지 않습니다.
    Rule_name nvarchar(128) 해당 형식에 바인딩된 규칙의 이름입니다.

    NULL = 기본값이 바인딩되지 않습니다.
    Collation sysname 데이터 형식의 데이터 정렬입니다. NULL 문자가 아닌 데이터 형식의 경우
  3. @name 데이터 형식 이외의 데이터베이스 개체인 경우 지정된 개체의 형식 sp_help 에 따라 이 결과 집합과 추가 결과 집합을 반환합니다.

    열 이름 데이터 형식 설명
    Name nvarchar(128) 테이블 이름
    Owner nvarchar(128) 테이블 소유자
    Type nvarchar(31) 테이블 유형
    Created_datetime 날짜/시간 만든 날짜 테이블

    지정한 데이터베이스 개체에 따라 추가 결과 집합을 sp_help 반환합니다.

    @name 시스템 테이블, 사용자 테이블 또는 뷰 sp_help 인 경우 다음 결과 집합을 반환합니다. 그러나 데이터 파일이 파일 그룹에 있는 위치를 설명하는 결과 집합은 보기에 대해 반환되지 않습니다.

    • 다음 결과 집합도 열 개체에 반환됩니다.

      열 이름 데이터 형식 설명
      Column_name nvarchar(128) 열 이름.
      Type nvarchar(128) 열 데이터 형식입니다.
      Computed varchar(35) 열의 값이 계산되는지 여부를 나타냅니다. Yes No
      Length int 열 길이(바이트)입니다.

      참고: 열 데이터 형식이 큰 값 형식(varchar(max), nvarchar(max), varbinary(max) 또는 xml)인 경우 값은 다음과 같이 -1표시됩니다.
      Prec char(5) 열의 전체 자릿수입니다.
      Scale char(5) 열 배율입니다.
      Nullable varchar(35) Yes No에 값이 허용되는지 여부를 NULL 나타냅니다.
      TrimTrailingBlanks varchar(35) 후행 공백을 자를지 여부를 Yes 또는 No을 반환합니다.
      FixedLenNullInSource varchar(35) 이 매개 변수는 사용되지 않으며 스크립트의 이전 버전과의 호환성을 위해 유지 관리됩니다.
      Collation sysname 열의 데이터 정렬입니다. NULL 비문자 데이터 형식의 경우
    • 다음 결과 집합도 ID 열에 반환됩니다.

      열 이름 데이터 형식 설명
      Identity nvarchar(128) 데이터 형식이 ID로 선언되는 열의 이름입니다.
      Seed numeric ID 열의 시작 값입니다.
      Increment numeric 이 열의 값에 사용할 증분입니다.
      Not For Replication int IDENTITYsqlrepl과 같은 복제 로그인이 테이블에 데이터를 삽입하는 경우 속성이 적용되지 않습니다.

      1 = True
      0 = False
    • 다음 결과 집합도 열에 반환됩니다.

      열 이름 데이터 형식 설명
      RowGuidCol sysname 전역 고유 식별자 열의 이름입니다.
    • 다음 결과 집합도 파일 그룹에 반환됩니다.

      열 이름 데이터 형식 설명
      Data_located_on_filegroup nvarchar(128) 데이터가 있는 파일 그룹: Primary, Secondary또는 Transaction Log.
    • 인덱스에도 다음 결과 집합이 반환됩니다.

      열 이름 데이터 형식 설명
      index_name sysname 인덱스 이름입니다.
      Index_description varchar(210) 인덱스의 설명입니다.
      index_keys nvarchar(2078) 인덱스가 작성된 열의 이름입니다. 메모리 최적화 columnstore 인덱스에 대한 반환 NULL 입니다.
    • 제약 조건에도 다음 결과 집합이 반환됩니다.

      열 이름 데이터 형식 설명
      constraint_type nvarchar(146) 제약 조건의 형식입니다.
      constraint_name nvarchar(128) 제약 조건의 이름입니다.
      delete_action nvarchar(9) 작업이 , , CASCADE또는 SET_DEFAULTSET_NULLN/A중 하나NO_ACTION인지 여부를 DELETE 나타냅니다.

      FOREIGN KEY 제약 조건에만 적용됩니다.
      update_action nvarchar(9) 작업이 , , CASCADE또는 SET_DEFAULTSET_NULLN/A중 하나NO_ACTION인지 여부를 UPDATE 나타냅니다.

      제약 조건에만 적용 FOREIGN KEY 됩니다.
      status_enabled varchar(8) 제약 조건이 사용되는EnabledDisabledN/A지 여부를 나타냅니다.

      제약 조건에만 적용됩니다 CHECK FOREIGN KEY .
      status_for_replication varchar(19) 제약 조건이 복제용인지 여부를 나타냅니다.

      제약 조건에만 적용됩니다 CHECK FOREIGN KEY .
      constraint_keys nvarchar(2078) 제약 조건을 구성하는 열의 이름 또는 기본값 및 규칙의 경우 기본값 또는 규칙을 정의하는 텍스트입니다.
    • 다음 결과 집합은 개체를 참조할 때도 반환됩니다.

      열 이름 데이터 형식 설명
      Table is referenced by nvarchar(516) 테이블을 참조하는 다른 데이터베이스 개체를 식별합니다.
    • 다음 결과 집합은 저장 프로시저, 함수 또는 확장 저장 프로시저에서도 반환됩니다.

      열 이름 데이터 형식 설명
      Parameter_name nvarchar(128) 저장 프로시저 매개 변수의 이름입니다.
      Type nvarchar(128) 저장 프로시저 매개 변수의 데이터 형식입니다.
      Length smallint 최대 물리적 스토리지 길이(바이트)입니다.
      Prec int 전체 자릿수 또는 총 자릿수입니다.
      Scale int 소수점 오른쪽에 있는 자릿수입니다.
      Param_order smallint 매개 변수의 순서입니다.

설명

프로시저는 sp_help 현재 데이터베이스에서만 개체를 찾습니다.

@name 지정 sp_help 되지 않은 경우 현재 데이터베이스의 모든 개체에 대한 개체 이름, 소유자 및 개체 형식을 나열합니다. sp_helptrigger 는 트리거에 대한 정보를 제공합니다.

sp_help 는 순서가 지정된 인덱스 열만 노출합니다. 따라서 XML 인덱스 또는 공간 인덱스에 대한 정보는 노출되지 않습니다.

사용 권한

public 역할의 멤버 자격이 필요합니다. 사용자에게 @objname 대해 하나 이상의 권한이 있어야 합니다. 열 제약 조건 키, 기본값 또는 규칙을 보려면 테이블에 대한 권한이 있어야 합니다 VIEW DEFINITION .

예제

이 문서의 Transact-SQL 코드 샘플은 AdventureWorks2022 또는 AdventureWorksDW2022 샘플 데이터베이스를 사용하며, 이는 Microsoft SQL Server 예시 및 커뮤니티 프로젝트(Microsoft SQL Server Samples and Community Projects) 홈 페이지에서 다운로드할 수 있습니다.

A. 모든 개체에 대한 정보 반환

다음 예제에서는 데이터베이스의 각 개체에 대한 정보를 나열합니다 master .

USE master;
GO
EXEC sp_help;
GO

B. 단일 개체에 대한 정보 반환

다음 예제에서는 테이블에 대한 정보를 표시합니다 Person.Person .

USE AdventureWorks2022;
GO
EXEC sp_help 'Person.Person';
GO