【数据库】快速导出表结构到excel中
这几天刚来实习,项目主管给我布置了个写文档的任务,要求把数据库中所有的表全部填在以下格式的文档中
一开始慢悠悠的从navicat中一个一个查看表的结构,不停的复制粘贴-复制粘贴,头都大了,几十张表,几千个字段,我啥时候能下班啊。
于是,我想起可以直接利用sql语句,生成上表的样式,然后直接复制进去,就可以了,话不多说,附上代码。
SELECT
COLUMN_NAME as 字段名称,
COLUMN_TYPE as 数据类型,
if(COLUMN_KEY='PRI','Y','N') as 主键,
COLUMN_COMMENT as 备注
FROM
INFORMATION_SCHEMA. COLUMNS
WHERE
table_schema = '数据库名称'
AND
table_name = '数据表名称'
使用内置表INFORMATION_SCHEMA. COLUMNS来查询,任何表中的任何一列都会在此表中对应一行记录。
例如,我的数据表account(账户表)的结构为
执行完sql语句后
现在直接复制粘贴就可以了!
-----------------------------------------------------------------------------------------------------------
那我能不能直接导出到excel中呢,还得带有表头。话不多说,放代码。
SELECT '字段名称','数据类型','主键','备注'
UNION
SELECT
COLUMN_NAME as 字段名称,
COLUMN_TYPE as 数据类型,
if(COLUMN_KEY='PRI','Y','N') as 主键,
COLUMN_COMMENT as 备注
FROM
INFORMATION_SCHEMA. COLUMNS
WHERE
table_schema = 'mydata'
AND
table_name = 'account'
INTO OUTFILE 'C:/Users/Administrator/Desktop/account.xls'
执行后,发现桌面多了account.xls,具体内容如下
唉,真舒服,又可以早点下班了。