source

Oracle SQL 다중 줄 테이블 주석 또는 열 주석 추가

factcode 2023. 10. 21. 10:52
반응형

Oracle SQL 다중 줄 테이블 주석 또는 열 주석 추가

다행 표/열 주석을 추가하고 싶습니다.

일반적으로 이 방법을 사용합니다.

COMMENT ON TABLE USERS IS 'User table has the user data'

제가 필요한 것은 따옴표 하나에 새 줄을 넣는 방법입니다.

COMMENT ON TABLE USERS IS 'User table has the user data <smthg_here_for_new_line> 1- Name column has name <smthg_here_for_new_line> 2- Number Column has the id'

테이블 주석은 다음과 같이 표시됩니다.

User table has the user data
1- Name column has name
2- Number Column has the id

다중 줄 표/열 주석 추가하는 방법 아는 사람?

코멘트 선언의 인용구 안에 줄 피드를 넣기만 하면 됩니다. 예를 들어 다음과 같습니다.

COMMENT ON COLUMN MYTABLE.MYCOLUMN
IS
'Line 1
Line 2.
Line 3';

그러나 SQL Developer(및 다른 도구)에서는 항상 예상대로 표시되지는 않습니다.다음 쿼리와 함께...

SELECT *
FROM USER_COL_COMMENTS
WHERE
  TABLE_NAME = 'MYTABLE'
  AND COMMENTS IS NOT NULL;

... 스크립트 출력에서 원하는 내용을 정확히 확인할 수 있습니다(예: 쿼리를 강조 표시하고 마우스 오른쪽 버튼을 클릭한 후 "스크립트 실행"을 선택).

TABLE_NAME COLUMN_NAME COMMENTS                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       
---------- ----------- --------------
MYTABLE    MYCOLUMN    Line 1
                       Line 2
                       Line 3
MYTABLE    OTHERCOLUMN Other comments

그러나 쿼리 결과(즉, 쿼리를 강조 표시하고 마우스 오른쪽 단추를 누른 후 "문 실행"을 선택)에서 테이블을 열고 열 탭을 볼 때 전체 주석이 한 줄에서 함께 실행됩니다.

참고: 이러한 의견을 조회할 수 있는 표는 다음과 같습니다.

  • 테이블에 대한 설명:USER_TAB_COMMENTS
  • 열에 대한 주석:USER_COL_COMMENTS

SQLPlus에서 concat을 chr(10)(또는 chr(13) || chr(10))과 함께 사용할 수 있습니다.

'User table has the user data' || chr(10) || '1- Name column has name...'

또한 SQLBLANKLINES를 ON:으로 설정하여 새 줄만 해석할 수 있어야 합니다.

SET SQLBLANKLINES ON
COMMENT ON TABLE USERS IS 'User table has the user data
1- Name column has name
2- Number Column has the id'

언급URL : https://stackoverflow.com/questions/21919468/oracle-sql-adding-multi-line-table-comment-or-column-comment

반응형