반응형
oracle 테이블 명세서 (정의서)
oracle 테이블 명세서 쿼리, 테이블 정의서 쿼리 작성 내용입니다.
oracle 쿼리
- 테이블명세서 (정의서) 내용입니다.
- [테이블 설명], [칼럼명], [칼럼 COMMENT], [DATA TYPE], [길이], [소수점], [기본값], [NOT NULL여부], [PK 여부]
SELECT
T.TABLE_NAME, -- 테이블 명
C.COMMENTS AS TABLE_COMMENT, -- 테이블 설명
COL.COLUMN_NAME, -- 컬럼명
COL_COM.COMMENTS AS COLUMN_COMMENT, -- 컬럼 COMMENT
COL.DATA_TYPE, -- DATA TYPE
COL.DATA_LENGTH AS LENGTH, -- 길이
COL.DATA_SCALE AS SCALE, -- 소수점
COL.DATA_DEFAULT AS DEFAULT_VALUE, -- 기본값
CASE COL.NULLABLE WHEN 'Y' THEN 'YES' ELSE 'NO' END AS IS_NULLABLE, -- NOT NULL 여부
CASE WHEN CONS.COLUMN_NAME IS NOT NULL THEN 'YES' ELSE 'NO' END AS IS_PK -- PK 여부
FROM
USER_TAB_COLUMNS COL
JOIN USER_TABLES T ON T.TABLE_NAME = COL.TABLE_NAME
LEFT JOIN USER_COL_COMMENTS COL_COM ON COL.TABLE_NAME = COL_COM.TABLE_NAME AND COL.COLUMN_NAME = COL_COM.COLUMN_NAME
LEFT JOIN USER_TAB_COMMENTS C ON T.TABLE_NAME = C.TABLE_NAME
LEFT JOIN (
SELECT
CONS.COLUMN_NAME, CONS.TABLE_NAME
FROM
USER_CONS_COLUMNS CONS
JOIN USER_CONSTRAINTS CON ON CONS.CONSTRAINT_NAME = CON.CONSTRAINT_NAME
WHERE
CON.CONSTRAINT_TYPE = 'P'
) CONS ON COL.TABLE_NAME = CONS.TABLE_NAME AND COL.COLUMN_NAME = CONS.COLUMN_NAME
ORDER BY
COL.TABLE_NAME, COL.COLUMN_ID;
- TABLE_NAME: 테이블의 이름을 나타냅니다.
- TABLE_COMMENT: 테이블에 대한 설명(확장 속성)을 가져옵니다.
- COLUMN_NAME: 칼럼의 이름을 나타냅니다.
- COLUMN_COMMENT: 칼럼에 대한 설명(확장 속성)을 가져옵니다.
- DATA_TYPE: 칼럼의 데이터 타입을 나타냅니다.
- LENGTH: 문자열 칼럼의 최대 길이를 나타냅니다.
- SCALE: 숫자 칼럼의 소수점 이하 자릿수를 나타냅니다.
- DEFAULT_VALUE: 칼럼의 기본값을 나타냅니다.
- IS_NULLABLE: 칼럼이 NULL을 허용하는지 여부를 나타냅니다.
- IS_PK: 해당 칼럼이 PRIMARY KEY인지 여부를 나타냅니다.
반응형
'db > oracle' 카테고리의 다른 글
windows oracle on/off 자동 실행 (0) | 2024.06.06 |
---|---|
oracle limit offset test query (0) | 2024.02.10 |
oracle random name (2) | 2024.02.09 |
egov 4.1 oracle 연결 (2) | 2024.02.08 |
oracle xml parsing (0) | 2024.02.06 |