Mysql查询数据库中含某字段的所有表
•
数据库
查询指定库拥有某字段的表
— 注释: columnName 字段名 dbName 数据库名
— AND TABLE_NAME NOT LIKE ‘vw%’ –> 作用:排除视图
SELECT DISTINCT TABLE_NAME FROM information_schema.COLUMNS WHERE COLUMN_NAME = 'columnName' AND TABLE_SCHEMA='dbName' AND TABLE_NAME NOT LIKE 'vw%';
— 举例:我要查数据库[fengchen]中包含字段[id]的所有表
select distinct TABLE_NAME from information_schema.`COLUMNS` where COLUMN_NAME='id' and TABLE_SCHEMA='fengchen' and TABLE_NAME not like 'vm%';
查询指定数据库所有的表名
— 通用模板
select table_name from information_schema.tables where table_schema='dbName' and table_type='base table';
— 例如:我要查询数据库【fengchen】中的所有表
select table_name from information_schema.`TABLES` where TABLE_SCHEMA='fengchen' and TABLE_TYPE='base table';
查询指定数据库没有某字段的所有表
— 通用模板
SELECT table_name FROM information_schema.TABLES WHERE table_schema = 'dbName' AND table_type = 'base table' AND TABLE_NAME NOT IN ( SELECT DISTINCT TABLE_NAME FROM information_schema.COLUMNS WHERE COLUMN_NAME = 'culumnName' AND TABLE_SCHEMA = 'dbName' AND TABLE_NAME NOT LIKE 'vw%' );
— 例如:查询数据库【fengchen】中表里没有字段【id】的所有表
SELECT table_name FROM information_schema.`TABLES` WHERE TABLE_SCHEMA = 'fengchen' AND TABLE_TYPE = 'base table' AND TABLE_NAME NOT IN ( SELECT DISTINCT TABLE_NAME FROM information_schema.`COLUMNS` WHERE COLUMN_NAME = 'id' AND TABLE_SCHEMA = 'fengchen' AND TABLE_NAME NOT LIKE 'vm' )
— 修改字段长度
alter table report_integral_detail modify column adjust_name VARCHAR(50);
修改字段长度可能会影响到应用程序的操作,请确保在适当的时间和地点进行修改。
如果你的表中已经存在数据,需要注意修改字段长度可能会导致数据丢失或者改变,因此在修改前最好先备份数据。
修改字段长度的操作可能会花费一定的时间,因此请确保在操作期间不要关闭程序或者强制终止任务。
本文来自网络,不代表协通编程立场,如若转载,请注明出处:https://www.net2asp.com/ba433168d2.html
