Oracle 匯出表結構(含列名、資料型別、欄位備註註釋)匯出成Excel
oracle表結構涉及到幾個關鍵的系統表:
-
cols –系統表
-
user_col_comments –表名、列名、說明
-
user_tab_comments –表名、型別、說明
-
user_objects – 字典表檢視
-
真正匯出的SQL語句整理如下:
SELECT
--t1.Table_Name || chr(13) || t3.comments AS "表名稱及說明",
ROWNUM ,
t1.Column_Name AS "欄位名稱",
t1.DATA_TYPE AS "資料型別",
t1.DATA_LENGTH AS "長度",
t1.NullAble AS "是否為空",
t2.Comments AS "欄位說明",
t1.Data_Default "預設值"
--t4.created AS "建表時間"
--t3.comments AS "表說明",
FROM cols t1
LEFT JOIN user_col_comments t2
ON t1.Table_name = t2.Table_name
AND t1.Column_Name = t2.Column_Name
LEFT JOIN user_tab_comments t3
ON t1.Table_name = t3.Table_name
LEFT JOIN user_objects t4
ON t1.table_name = t4.OBJECT_NAME
WHERE NOT EXISTS (SELECT t4.Object_Name
FROM User_objects t4
WHERE t4.Object_Type = 'TABLE'
AND t4.Temporary = 'Y'
AND t4.Object_Name = t1.Table_Name)
and t1.TABLE_NAME='你要查詢的表名'