본문 바로가기
study/TIP

ORACLE TABLE COLUMN COMENT 정보 조회

by 휘루걸음 2023. 12. 21.
728x90
반응형

산출물이나 기타 목적으로 테이블에서 코멘트 또는 컬럼 정보 등, 데이터 외의 정보를 출력해야 할 때가 있습니다.

한땀한땀 확인하는 수작업 말고 간단한 쿼리로 조회하는 방법을 정리해보았습니다.

 

728x90

 

테이블 컬럼정보 조회

Oracle 데이터베이스에서 테이블의 컬럼 정보를 얻기 위해 사용할 수 있는 방법은 다양합니다.

가장 일반적인 방법 중 하나는 다음과 같은 쿼리를 사용하여 원하는 테이블의 컬럼 정보를 가져오는 것입니다.

 
DESCRIBE 테이블명;
 

위의 쿼리에서 '테이블명'에는 조회하려는 실제 테이블의 이름을 넣어주시면 됩니다. 이 쿼리는 특정 테이블에 대한 컬럼 정보를 보여줍니다.

 

ALL_TAB_COLUMNS

또 다른 방법으로는 시스템 카탈로그 뷰인 'ALL_TAB_COLUMNS'을 사용하여 테이블의 컬럼 정보를 조회할 수 있습니다.

SELECT * FROM ALL_TAB_COLUMNS WHERE TABLE_NAME = '테이블명';

SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH, NULLABLE 
FROM ALL_TAB_COLUMNS 
WHERE TABLE_NAME = '원하는_테이블_이름';

 

이 쿼리는 '테이블명'에 해당하는 테이블의 모든 컬럼 정보를 보여줍니다. 이때 'ALL_TAB_COLUMNS' 뷰는 데이터베이스의 모든 테이블에 대한 정보를 포함하고 있으며, 해당 사용자에게 허용된 테이블에 대한 정보를 조회할 수 있습니다.

 

  • COLUMN_NAME: 컬럼의 이름
  • DATA_TYPE: 컬럼의 데이터 타입
  • DATA_LENGTH: 데이터의 길이
  • NULLABLE: NULL 허용 여부 ('Y' 또는 'N' 값)

이 쿼리는 시스템 카탈로그 뷰인 ALL_TAB_COLUMNS을 사용하여 원하는 테이블의 컬럼 정보를 가져옵니다. ALL_TAB_COLUMNS 뷰는 데이터베이스에 접근 가능한 모든 테이블의 컬럼 정보를 포함하고 있습니다.

이외에도 USER_TAB_COLUMNS 뷰를 사용하여 현재 사용자가 소유한 테이블의 컬럼 정보를 조회할 수도 있습니다. 이 경우 특정 사용자가 소유한 테이블에 대한 정보만을 가져올 수 있습니다.

 

USER_TAB_COLUMNS

더불어, 'USER_TAB_COLUMNS' 뷰를 사용하면 현재 사용자가 소유한 테이블의 컬럼 정보를 확인할 수 있습니다.

SELECT * FROM USER_TAB_COLUMNS WHERE TABLE_NAME = '테이블명';

SELECT COLUMN_NAME, DATA_TYPE, DATA_LENGTH, NULLABLE 
FROM USER_TAB_COLUMNS 
WHERE TABLE_NAME = '원하는_테이블_이름';
 

위의 쿼리는 현재 사용자가 소유한 '테이블명'에 해당하는 테이블의 컬럼 정보를 보여줍니다.

위의 쿼리들은 테이블의 컬럼명, 데이터 타입, 널 허용 여부 등의 정보를 제공합니다. 사용자의 권한과 데이터베이스의 설정에 따라 실제로 조회할 수 있는 정보가 달라질 수 있으니, 필요에 따라 적절한 뷰를 선택하여 사용하시면 됩니다.

 

 

코멘트 조회

 

Oracle 데이터베이스에서 테이블에 대한 코멘트(주석)를 조회하는 방법은 다음과 같습니다.

SELECT TABLE_NAME, COMMENTS FROM USER_TAB_COMMENTS 
WHERE TABLE_NAME = '원하는_테이블_이름';
 

위의 쿼리는 현재 사용자가 소유한 테이블의 코멘트를 조회합니다. USER_TAB_COMMENTS 뷰를 사용하여 특정 테이블의 코멘트를 가져올 수 있습니다.

만약 다른 사용자가 소유한 테이블의 코멘트를 조회하고 싶다면 ALL_TAB_COMMENTS 또는 DBA_TAB_COMMENTS 뷰를 사용할 수 있습니다. 단, ALL_TAB_COMMENTS는 사용자에게 권한이 부여된 테이블의 코멘트를 조회하며, DBA_TAB_COMMENTS는 데이터베이스의 모든 테이블에 대한 코멘트를 조회합니다.

SELECT TABLE_NAME, COMMENTS FROM ALL_TAB_COMMENTS 
WHERE TABLE_NAME = '원하는_테이블_이름';

또는

SELECT TABLE_NAME, COMMENTS FROM DBA_TAB_COMMENTS 
WHERE TABLE_NAME = '원하는_테이블_이름';

 

위의 쿼리들은 특정 테이블의 코멘트를 조회하는 예시입니다. 원하는 테이블의 이름을 적절히 변경하여 원하는 테이블의 코멘트를 확인할 수 있습니다.

 

 

728x90
반응형