查看MySQL数据库所有的表名、表注释、字段名称、类型、长度、备注,一键导出生成数据库字典...

一、先了解下INFORMATION_SCHEMA
1、在MySQL中,把INFORMATION_SCHEMA看作是一个数据库,确切说是信息数据库。其中保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名,数据库的表,表栏的数据类型与访问权 限等。在INFORMATION_SCHEMA中,有数个只读表。它们实际上是视图,而不是基本表,因此,你将无法看到与之相关的任何文件。

2、TABLES表:提供了关于数据库中的表的信息(包括视图)。详细表述了某个表属于哪个schema,表类型,表引擎,创建时间等信息。是show tables from schemaname的结果取之此表。

3、COLUMNS表:提供了表中的列信息。详细表述了某张表的所有列以及每个列的信息。是show columns from schemaname.tablename的结果取之此表。

二、举例实践:

查看ftp数据库内以oemp开头的所有的表名、表数据量、表备注、字段名称、字段类型、默认值、字段备注等;如果查整个数据库就把ftp后全删除。

SELECT  
    T1.TABLE_COMMENT 表注释,
    T1.TABLE_ROWS 表数据量,
    T2.TABLE_NAME 表名,
    T2.COLUMN_NAME 字段名,  
    T2.COLUMN_TYPE 数据类型,  
    T2.DATA_TYPE 字段类型,  
    T2.CHARACTER_MAXIMUM_LENGTH 长度,  
    T2.IS_NULLABLE 是否为空,  
    T2.COLUMN_DEFAULT 默认值,  
    T2.COLUMN_COMMENT 字段备注   
FROM 
    INFORMATION_SCHEMA.TABLES T1
LEFT JOIN
    INFORMATION_SCHEMA.COLUMNS T2
ON
    T1.TABLE_NAME = T2.TABLE_NAME
WHERE  
    T1.TABLE_SCHEMA ='ftp'
AND 
    T1.TABLE_NAME LIKE 'oemp%'
ORDER BY 
    T1.TABLE_NAME;

 导出查询结果生成数据库字典

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用如下的SQL语句来获取dwd库中所有的信息: ``` SELECT table_name, table_comment FROM information_schema.tables WHERE table_schema = 'dwd' ``` 这个语句会返回dwd库中所有表名注释。 接下来,可以使用以下的SQL语句来获取每个字段名字段注释: ``` SELECT column_name, column_comment FROM information_schema.columns WHERE table_schema = 'dwd' AND table_name = '表名' ``` 将上面的SQL语句中的“表名”替换成具体的表名,就可以获取该的所有字段名字段注释。 如果需要将所有的信息都导出来,可以使用脚本来自动化执行以上的SQL查询,并将结果保存到文件中。以下是一个Python脚本的示例: ``` import pymysql # 连接数据库 db = pymysql.connect(host='localhost', user='root', password='密码', db='dwd') # 获取所有的信息 cursor = db.cursor() cursor.execute("SELECT table_name, table_comment FROM information_schema.tables WHERE table_schema = 'dwd'") tables = cursor.fetchall() # 获取每个字段信息并输出到文件 with open('output.txt', 'w', encoding='utf-8') as f: for table in tables: table_name = table[0] table_comment = table[1] f.write(f'Table Name: {table_name}\nTable Comment: {table_comment}\n') cursor.execute(f"SELECT column_name, column_comment FROM information_schema.columns WHERE table_schema = 'dwd' AND table_name = '{table_name}'") columns = cursor.fetchall() for column in columns: column_name = column[0] column_comment = column[1] f.write(f'Column Name: {column_name}\nColumn Comment: {column_comment}\n') f.write('\n') # 关闭数据库连接 db.close() ``` 这个脚本会将所有的信息输出到一个名为“output.txt”的文件中。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值