場景描述:
項目開發中,模型設計經常用powerdesigner來操作,當我們需要給別人介紹表結構或者一些文檔交付的時候,需要Excel表格樣式的數據,
這個時候,可以用工具Navicat來實現。
操作步驟:
注:本文針對postgresql數據庫
1. 執行如下sql語句,查看表結構
SELECT A.attnum AS "序號", ---C.relname AS "表名", ---CAST ( obj_description ( relfilenode, 'pg_class' ) AS VARCHAR ) AS "表名描述", A.attname AS "字段名", A.attnotnull as 是否為空, ---IF(A.attnotnull='f','是','否') AS '必填', concat_ws ( '', T.typname, SUBSTRING ( format_type ( A.atttypid, A.atttypmod ) FROM '\(.*\)' ) ) AS "數據類型", d.description AS "注釋" FROM pg_class C, pg_attribute A, pg_type T, pg_description d WHERE C.relname = '實際表名' AND A.attnum > 0 AND A.attrelid = C.oid AND A.atttypid = T.oid AND d.objoid = A.attrelid AND d.objsubid = A.attnum ORDER BY C.relname DESC, A.attnum ASC
2. 點擊運行,小三角,切換到查詢結果界面
3. 如果執行正常,確認結果后,點擊上邊的“導出結果”按鈕,
彈出如下窗口:
點擊“Export Current Result”,勾選Excel文件,Continue繼續,按着提示繼續保存就可以。
--OK
參考:
Navicat導出mysql表結構:https://www.cnblogs.com/xianxiaobo/p/10254737.html
SELECT COLUMN_NAME 字段名稱, COLUMN_TYPE 數據類型, IF(IS_NULLABLE='NO','是','否') AS '必填', COLUMN_COMMENT 注釋 FROM INFORMATION_SCHEMA.COLUMNS where -- Finance為數據庫名稱,到時候只需要修改成你要導出表結構的數據庫即可 table_schema ='Finance' AND -- user為表名,到時候換成你要導出的表的名稱 -- 如果不寫的話,默認會查詢出所有表中的數據,這樣可能就分不清到底哪些字段是哪張表中的了 table_name = 'user'
https://blog.csdn.net/u010189683/article/details/84947193
查詢Postgresql系統表,顯示列名...: https://blog.csdn.net/weixin_43236610/article/details/88077484
select a.attname as 列名, format_type(a.atttypid, a.atttypmod) as 類型, (case when a.attlen > 0 then a.attlen else a.atttypmod - 4 end) as 長度, a.attnotnull as 是否可為空, d.adsrc as 默認值, col_description(a.attrelid, a.attnum) as 備注 from pg_class c, pg_attribute a left join (select a.attname, ad.adsrc from pg_class c, pg_attribute a, pg_attrdef ad where relname = 'table_name' and ad.adrelid = c.oid and adnum = a.attnum and attrelid = c.oid) as d on a.attname = d.attname where c.relname = 'table_name' and a.attrelid = c.oid and a.attnum > 0;