SQL - 데이터베이스 정보 확인하기 (테이블 확인, 컬럼 확인, 컬럼 정보 확인)

 
데이터베이스를 사용하면서 생각보다 자주 데이터베이스의 정보를 확인해야할 때가 있다.
그럴 때에 막무가내로 직접 테이블들을 조회해서 하는 것보다는,
데이터베이스 시스템 정보를 포함하고 있는 뷰를 활용하는 편이 훨씬 좋고 편하다.
사실 이 포스팅을 작성하는 이유는 내가 해당 쿼리를 보다 더 편하게 재활용하기 위해서이다.
아래는 데이터베이스의 정보를 확인할 수 있는 쿼리이다.
MS-SQL, MySQL 에서 모두 사용 가능하다.

  • 그대로 사용하면 해당 데이터베이스에 있는 모든 정보를 조회할 수 있다.
  • WHERE절에 테이블 이름으로 조건을 걸면 내가 필요한 테이블의 정보를 상세하게 확인할 수 있다.
SELECT 
	TABLE_CATALOG as 데이터베이스명,
	TABLE_SCHEMA as 스키마명,
	TABLE_NAME as 테이블명,
	COLUMN_NAME as 컬럼명,
	ORDINAL_POSITION as 컬럼순서,
	COLUMN_DEFAULT as 컬럼기본값,
	IS_NULLABLE as 널허용여부,
	DATA_TYPE as 데이터타입,
	CHARACTER_MAXIMUM_LENGTH as 문자열최대글자수,
	CHARACTER_SET_NAME as 문자집합유형,
	NUMERIC_PRECISION as 숫자정밀도, -- 진법
	DATETIME_PRECISION as 날짜정밀도, -- 정밀도 0 : 초단위 / 정밀도 3 : 밀리초 단위
	COLLATION_NAME as 문자열정렬순서 -- 문자열의 데이터 정렬 순서
FROM
	information_schema.columns
-- WHERE TABLE_NAME = '조회할테이블명'