기록
article thumbnail
728x90

SSMS에서 쿼리를 바로 실행하는 단축키를 지정할 수 있는 옵션이 있습니다. 기본값으로 설정되어 있는 것은 Alt + F1을 하면 sp_help를 실행합니다. 테이블의 기본 구조와 타입을 확인하기 매우 좋은 프로시저입니다. 

 

[도구] - [옵션] - [키보드] - [쿼리 바로가기]에서 설정할 수 있습니다.

Alt+F1 : sp_help

데이터베이스 개체, 사용자 정의 데이터 형식이나 데이터 형식에 대한 정보를 보고합니다. 모든 정보를 보여주기 때문에 실행이 안될 경우 권한 문제를 확인해야 합니다.


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

Ctrl + 0 : 상위 10개 조회 설정

 

테이블 상위 10개로 조회해서 어떤 데이터가 들어있는지 데이터를 파악하기 위해서 설정하였습니다.

Ctrl + 9 : 테이블의 컬럼 정보 및 추가한 확장 속성 조회 설정

데이터베이스 개체 확장 속성 추가하는 시스템 저장 프로시저를 알아보다가 단축키 등록하면 좋겠다 싶어서 sp를 생성하였습니다.

CREATE PROCEDURE [dbo].[sp_Get_Database_Table_Descriptions]
(
	@TABLE nvarchar(50) = ''
)
AS
BEGIN
	
	SET NOCOUNT ON;

	SELECT F.TABLE_CATALOG				as DatabaseName 
		 , A.NAME						as TableName
		 , C.VALUE						as TableDesc
		 , D.COLORDER					as ColumnIndex
		 , D.NAME						as ColumnName
		 , E.VALUE						as ColumnDescription
		 , F.DATA_TYPE					as ColumnType
		 , F.CHARACTER_OCTET_LENGTH		as ColumnLength
		 , F.IS_NULLABLE	            as ColumnIsNull
	  FROM SYSOBJECTS A WITH (NOLOCK)
	 INNER JOIN SYSUSERS B WITH (NOLOCK)        ON A.UID = B.UID
	 INNER JOIN SYSCOLUMNS D WITH (NOLOCK)        ON D.ID = A.ID
	 INNER JOIN INFORMATION_SCHEMA.COLUMNS F WITH (NOLOCK)
		ON A.NAME = F.TABLE_NAME
	   AND D.NAME = F.COLUMN_NAME
	  LEFT JOIN SYS.EXTENDED_PROPERTIES C WITH (NOLOCK)
		ON C.MAJOR_ID = A.ID
	   AND C.MINOR_ID = 0
	   AND C.NAME = 'MS_Description'
	  LEFT JOIN SYS.EXTENDED_PROPERTIES E WITH (NOLOCK)
		ON E.MAJOR_ID = D.ID
	   AND E.MINOR_ID = D.COLID
	   AND E.NAME = 'MS_Description'  
	 WHERE A.TYPE = 'U'
	   AND A.NAME = @TABLE
	 ORDER BY D.COLORDER

END

적용이 안될 경우
쿼리 바로가기를 등록했는데 단축키를 눌러도 안될 경우에는 SSMS를 재실행하면 잘 됩니다.
참고 자료
https://learn.microsoft.com/ko-kr/sql/relational-databases/system-stored-procedures/sp-help-transact-sql?view=sql-server-ver16
728x90