MySql教程

MySQL将表信息导出成Excel

本文主要是介绍MySQL将表信息导出成Excel,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

今天收到一个新需求,将所有数据库表整理成表格提交给产品,给的模板大概是这样

考虑到表也不多,就打算直接sql进行查询后cv大法。

先展示结果,如图:

上代码

SELECT
  COLUMN_NAME 数据项名称,
  DATA_TYPE 数据项类型,
  CHARACTER_MAXIMUM_LENGTH 数据项长度,
  IF (COLUMN_KEY = 'PRI', '是', '') 是否关键字,
  IF (IS_NULLABLE = 'NO', '否', '是') 是否为空,
  COLUMN_COMMENT 数据项含义,
  IF (EXTRA = 'auto_increment', '自增', '') 数据项说明
FROM
  INFORMATION_SCHEMA. COLUMNS
WHERE
  -- 数据库名称
  table_schema = '你的数据库名'
  -- article为表名
  AND table_name = '你的表名'

以上是我需求所需要的用到的字段,还有很多其他的字段你们可以参考下表:

列名 字段类型 描述
TABLE_CATALOG varchar(512) 表限定符
TABLE_SCHEMA varchar(64) 表所有者
TABLE_NAME varchar(64) 表名
COLUMN_NAME varchar(64) 列名
ORDINAL_POSITION bigint(21) 列标识序号(顺序)
COLUMN_DEFAULT longtext 该列的默认值
IS_NULLABLE varchar(3) 是否为空,返回NO/YES
DATA_TYPE varchar(64) 数据类型(举例:varchar)
CHARACTER_MAXIMUM_LENGTH bigint(21) 以字符为单位的最大长度
CHARACTER_OCTET_LENGTH bigint(21) 以字节为单位的最大长度
NUMERIC_PRECISION bigint(21) 近似数字数据、精确数字数据、整型数据或货币数据的精度。否则,返回 NULL
NUMERIC_SCALE bigint(21) 近似数字数据、精确数字数据、整数数据或货币数据的小数位数。否则,返回 NULL
CHARACTER_SET_NAME varchar(32) 如果该列是字符数据或 text 数据类型,那么为字符集返回唯一的名称。否则,返回 NULL
COLLATION_NAME varchar(32) datetime 及 SQL-92 interval 数据类型的子类型代码。对于其它数据类型,返回 NULL
COLUMN_TYPE longtext 如果列是字符数据或 text 数据类型,那么为排序次序返回唯一的名称。否则,返回 NULL
COLUMN_KEY varchar(3) 索引
EXTRA varchar(27) 额外项,例如:有自增返回auto_increment,否则空字符串
PRIVILEGES varchar(80) 权限
COLUMN_COMMENT varchar(1024) 注释

以上部分描述来源于百度,不理解的自己拿一张表去 select * 一下 INFORMATION_SCHEMA. COLUMNS 表基本就能get了。

这篇关于MySQL将表信息导出成Excel的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!