INFORMATION_SCHEMA是MySQL数据库中的一个特殊数据库,它包含了关于所有数据库、表、列、索引等对象的元数据信息,这些信息可以帮助我们了解数据库的结构,以及对数据库进行管理和维护,INFORMATION_SCHEMA中的数据以表格的形式展示,每个表格都有一个唯一的名称,如表名、列名等。
1、查询数据库列表
要查询INFORMATION_SCHEMA中的数据库列表,可以使用以下SQL语句:
SELECT SCHEMA_NAME FROM INFORMATION_SCHEMA.SCHEMATA;
2、查询表列表
要查询某个数据库中的表列表,可以使用以下SQL语句:
SELECT TABLE_NAME FROM INFORMATION_SCHEMA.TABLES WHERE TABLE_SCHEMA = '数据库名';
3、查询列信息
要查询某个表的列信息,可以使用以下SQL语句:
SELECT COLUMN_NAME, DATA_TYPE, COLUMN_TYPE, IS_NULLABLE, COLUMN_KEY, EXTRA FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = '数据库名' AND TABLE_NAME = '表名';
4、查询索引信息
要查询某个表的索引信息,可以使用以下SQL语句:
SELECT INDEX_NAME, COLUMN_NAME, INDEX_TYPE, NON_UNIQUE, SEQ_IN_INDEX, INDEX_COMMENT FROM INFORMATION_SCHEMA.STATISTICS WHERE TABLE_SCHEMA = '数据库名' AND TABLE_NAME = '表名';
5、查询外键约束信息
要查询某个表的外键约束信息,可以使用以下SQL语句:
SELECT KCU.REFERENCED_TABLE_SCHEMA, KCU.REFERENCED_TABLE_NAME, KCU.REFERENCED_COLUMN_NAME, KCU.UPDATE_RULE, KCU.DELETE_RULE, KCU.FK_NAME, KCU.PK_NAME, KCU.DEFERRABILITY FROM INFORMATION_SCHEMA.KEY_COLUMN_USAGE AS KCU JOIN INFORMATION_SCHEMA.REFERENTIAL_CONSTRAINTS AS RC ON KCU.CONSTRAINT_SCHEMA = RC.CONSTRAINT_SCHEMA AND KCU.CONSTRAINT_NAME = RC.CONSTRAINT_NAME WHERE RC.CONSTRAINT_SCHEMA = '数据库名' AND RC.CONSTRAINT_NAME = '外键约束名';
6、查询视图信息
要查询某个数据库中的视图信息,可以使用以下SQL语句:
SELECT TABLE_NAME, VIEW_DEFINITION FROM INFORMATION_SCHEMA.VIEWS WHERE TABLE_SCHEMA = '数据库名';
7、查询存储过程和函数信息
要查询某个数据库中的存储过程和函数信息,可以使用以下SQL语句:
SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA = '数据库名' AND ROUTINE_TYPE = 'FUNCTION' UNION ALL SELECT ROUTINE_NAME, ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA = '数据库名' AND ROUTINE_TYPE = 'PROCEDURE';
1、INFORMATION_SCHEMA中有哪些类型的元数据?
答:INFORMATION_SCHEMA中包含的元数据类型有:表(TABLE)、列(COLUMN)、索引(INDEX)、外键(FOREIGN KEY)、视图(VIEW)、存储过程(ROUTINE)和触发器(TRIGGER)。
2、如何删除INFORMATION_SCHEMA中的某个视图?
答:在MySQL中,视图实际上是一个虚拟表,它是基于其他表的查询结果生成的,不能直接删除视图,如果需要删除视图,可以先删除依赖于该视图的所有表和视图引用,然后再删除视图本身,具体操作如下:
DROP VIEW view_name; -删除视图本身 DROP TABLE table1; -删除依赖于视图的表1 DROP TABLE table2; -删除依赖于视图的表2; -如果还有其他表依赖于该视图,依次删除这些表即可。
文章标题:mysql信息
文章转载:http://www.shufengxianlan.com/qtweb/news14/381164.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联