阅读文本大概需要3分钟。

       小团队作战经常是上来就是随便打下草稿,然后三七二十一使用图形化工具把数据库表结构建起来了,根本就没有写像下面这种数据库设计文档后,才进行代码编写工作。

      但是随着项目的完成,需要交付给客户。交付免不了需要各种交付文档,其中数据库设计文档就是其中一个需要交付的文档。有没有快速编写数据库设计文档的方法呢?一条语句的事,轻轻松松搞掂。

  1. SET @rownum = 0;

  2. SELECT

  3. '序号',

  4. '列名',

  5. '类类',

  6. '长度',

  7. '是否为空',

  8. '列的描述'

  9. FROM

  10. DUAL

  11. UNION

  12. SELECT

  13. @rownum :=@rownum + 1 AS 序号,

  14. COLUMN_NAME AS 列名,

  15. COLUMN_TYPE AS 类型,

  16. CHARACTER_MAXIMUM_LENGTH AS 长度,

  17. (

  18. CASE

  19. WHEN IS_NULLABLE = 'YES' THEN

  20. '是'

  21. ELSE

  22. '否'

  23. END

  24. ) AS 是否为空,

  25. COLUMN_COMMENT AS 列的描述

  26. FROM

  27. information_schema.`COLUMNS`   

  28. WHERE

  29. TABLE_NAME = ('jc_user')

从语句中可以看到使用到information_schema库的COLUMNS 表,是因为所有创建的表的字段的元信息都存储在information_schema库的COLUMNS 表中,所有使用COLUMNS 表。上面这条语句只是导出jc_user这张确定的表的字段信息。

下面这条SQL语句可以导出查出jeecms2库的表的名字

  1. SET @rownum = 0;

  2. SELECT

  3. @rownum :=@rownum + 1 AS 序号,

  4.   t.table_name AS 表名,

  5. t.TABLE_COMMENT AS 描述

  1. FROM

  2. information_schema.`TABLES` t

  3. WHERE

  4. t.TABLE_SCHEMA = 'jeecms2'

  5. ORDER BY

  6. t.TABLE_NAME;

结合以上这两条SQL,可以在使用POI就可以开发一个非常实用的工具,生成数据库设计文档就是那么一分钟的事。

往期精彩

01 漫谈发版哪些事,好课程推荐

02 Linux的常用最危险的命令

03 精讲Spring Boot—入门+进阶+实例

04 优秀的Java程序员必须了解的GC哪些

05 互联网支付系统整体架构详解

关注我

每天进步一点点

喜欢!在看☟

Logo

一站式 AI 云服务平台

更多推荐