生成数据库结构字段SQL语句

本文提供了几个SQL查询来获取数据库中的表名、表注释以及字段信息。此外,还展示了如何生成修改字段名称大小写的SQL脚本,并给出了关联查询表名和列数据的方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

获取表名数据

SELECT
	TABLE_NAME 表名 ,
	TABLE_COMMENT 表注释
FROM
	INFORMATION_SCHEMA.`TABLES` 
WHERE
	table_schema = '数据库名' 
ORDER BY
	table_name ;

获取表字段数据

SELECT
	table_name 表名,
	COLUMN_NAME 列名,
	COLUMN_COMMENT 备注,
	COLUMN_TYPE 数据类型,
	DATA_TYPE 字段类型,
	CHARACTER_MAXIMUM_LENGTH 长度,
	IS_NULLABLE 是否必填
FROM
	INFORMATION_SCHEMA.`COLUMNS` 
WHERE
	table_schema = '数据库名' 
ORDER BY
	table_name

表字段改大写为小写(LOWER),小写改为大写(UPPER)

SELECT concat('ALTER TABLE '
           , '表名'
           , ' CHANGE COLUMN '
           , COLUMN_NAME, ' '
           , LOWER(COLUMN_NAME)
           , ' '
           , COLUMN_TYPE
           , ' COMMENT '''
           , COLUMN_COMMENT
           , ''';') AS '修改脚本'
FROM information_schema.COLUMNS
WHERE TABLE_SCHEMA = '数据库名'
  and TABLE_NAME = '表名';

关联查询表名和列数据

SELECT DISTINCT
	sc.table_name 表名,
	st.TABLE_COMMENT 表备注
-- 	,
-- 	sc.COLUMN_NAME 列名,
-- 	sc.COLUMN_COMMENT 备注,
-- 	sc.COLUMN_TYPE 数据类型,
-- 	sc.DATA_TYPE 字段类型,
-- 	sc.CHARACTER_MAXIMUM_LENGTH 长度,
-- 	sc.IS_NULLABLE 是否必填 
FROM
	INFORMATION_SCHEMA.`COLUMNS` sc
	INNER JOIN INFORMATION_SCHEMA.TABLES st ON sc.table_name = st.TABLE_NAME 
WHERE
	sc.table_schema = '数据库名' 
	AND sc.COLUMN_NAME IN ( 'xxx', 'xxx' ) 
	AND sc.table_name NOT IN ( 'xxx', 'xxx' ) 
ORDER BY
	sc.table_name;
	
SELECT TABLE_SCHEMA, TABLE_NAME, TABLE_COMMENT 
FROM INFORMATION_SCHEMA.TABLES 
WHERE TABLE_SCHEMA = '数据库名';
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值