小團隊作戰經常是上來就是隨便打下草稿,然后三七二十一使用圖形化工具把數據庫表結構建起來了,根本就沒有寫像下面這種數據庫設計文檔后,才進行代碼編寫工作。
但是隨著項目的完成,需要交付給客戶。交付免不了需要各種交付文檔,其中數據庫設計文檔就是其中一個需要交付的文檔。有沒有快速編寫數據庫設計文檔的方法呢?一條語句的事,輕輕松松搞掂。
SET @rownum = 0;
SELECT
'序號',
'列名',
'類類',
'長度',
'是否為空',
'列的描述'
FROM
DUAL
UNION
SELECT
@rownum :=@rownum + 1 AS 序號,
COLUMN_NAME AS 列名,
COLUMN_TYPE AS 類型,
CHARACTER_MAXIMUM_LENGTH AS 長度,
(
CASE
WHEN IS_NULLABLE = 'YES' THEN
'是'
ELSE
'否'
END
) AS 是否為空,
COLUMN_COMMENT AS 列的描述
FROM
information_schema.`COLUMNS`
WHERE
TABLE_NAME = ('jc_user')
從語句中可以看到使用到information_schema庫的COLUMNS 表,是因為所有創建的表的字段的元信息都存儲在information_schema庫的COLUMNS 表中,所有使用COLUMNS 表。上面這條語句只是導出jc_user這張確定的表的字段信息。
下面這條SQL語句可以導出查出jeecms2庫的表的名字
SET @rownum = 0;
SELECT
@rownum :=@rownum + 1 AS 序號,
t.table_name AS 表名,
t.TABLE_COMMENT AS 描述
FROM
information_schema.`TABLES` t
WHERE
t.TABLE_SCHEMA = 'jeecms2'
ORDER BY
t.TABLE_NAME;
結合以上這兩條SQL,可以在使用POI就可以開發一個非常實用的工具,生成數據庫設計文檔就是那么一分鐘的事。






