DBMS/PostgreSQL

[PostgreSQL] INFORMATION_SCHEMA - 스키마별 각종 정보 조회하기 (ft. 컬럼, 함수, 시퀀스, 테이블 목록 등)

썸머워즈 2021. 12. 4. 11:31
반응형

PostgreSQL에서 데이터베이스 스키마별 들어있는 컬럼, 함수, 시퀀스, 테이블 스키마 등 여러 정보를 조회할 수 있는데,

이는 INFORMATION_SCHEMA를 통해 조회가 가능하다.

 

물론 저걸 그대로 사용할수는 없고 뒤에 목적에 따라 하나씩 붙여주며 사용한다.

 

하나하나 예제를 통해 알아보자.


▷ 예제1) 함수 목록 가져오기

select * from INFORMATION_SCHEMA.ROUTINES;
-- select * from INFORMATION_SCHEMA.ROUTINES where routine_type = 'FUNCTION';

이런식으로 사용을 해보면 데이터들이 조회되며 routine_type 더 확실하게 하기 위해서 function인 녀석들만 조건을 걸어서 조회하면된다.

 

결과 데이터에서 함수들이 속한 스키마와 함수이름 등의 각종 정보를 조회할 수 있다.

 

▷ 예제2) 테이블 목록 가져오기

select * from INFORMATION_SCHEMA.TABLES;

테이블의 스키마 등 테이블 목록 데이터를 조회할 수 있다.

 

▷ 예제3) 시퀀스 목록 가져오기

select * from INFORMATION_SCHEMA.SEQUENCES;

시퀀스의 카탈로그, 스키마명, 시퀀스 설정값 등의 데이터를 조회한다.

 

▷ 예제4) 컬럼 목록 가져오기

https://mine-it-record.tistory.com/379

 

[PostgreSQL] 테이블의 컬럼 정보 확인_INFORMATION_SCHEMA.COLUMNS (ft. 특정 컬럼 존재 여부 확인)

PostgreSQL에서 특정 테이블의 컬럼 목록과 특정 컬럼의 존재 여부를 확인하는 방법에 대해 알아보자. PostgreSQL의 구조를 보면 알겠지만 데이터베이스 내 schema 별로 테이블을 가지고 있는데 이 모든

mine-it-record.tistory.com


예제들을 보면 알겠지만 본문 시작부분에서 설명한 것 처럼 INFORMATION_SCHEMA 뒤에 필요한 정보가 있는 곳을 조회하면 해당 종류별 데이터들을 조회할 수 있다.

 

INFORMATION_SCHEMA 에서 조회할 수 있는 데이터가 많기 때문에 예제로 전부 다룰수는 없고 아래 문서를 참고해서 사용해보자.

 

참고 : https://www.postgresql.org/docs/10/information-schema.html

 

Chapter 36. The Information Schema

Chapter 36. The Information Schema Table of Contents 36.1. The Schema 36.2. Data Types 36.3. information_schema_catalog_name 36.4. administrable_role_authorizations 36.5. applicable_roles 36.6. attributes …

www.postgresql.org

반응형