当前位置:   article > 正文

[MySQL分享]--查看MySQL数据字典SQL(包含索引)_如何查看sql数据字典

如何查看sql数据字典



 版权声明:本文档可以转载,须署名原作者
作者:周祥兴
网名:无为
QQ:490073687 
Email:zhou.xiangxing210@163.com


查看单表数据结构:show create table t\G;

查看单表上的索引:show index from t;show keys from t;

下面通过mysql自带的系统表,提取整个库的数据字典信息:

  1. -- 表结构
  2. SELECT a.TABLE_NAME "表",
  3. a.COLUMN_NAME "列",
  4. a.COLUMN_TYPE "类型",
  5. a.COLUMN_DEFAULT "默认值",
  6. a.IS_NULLABLE "是否为空",
  7. a.CHARACTER_SET_NAME "表字符集",
  8. a.COLLATION_NAME "校验字符集",
  9. CONCAT(a.COLUMN_COMMENT,a.COLUMN_KEY, a.EXTRA) "列备注",
  10. b.TABLE_COMMENT "表备注" ,
  11. b.ENGINE "引擎"
  12. FROM information_schema.COLUMNS a,information_schema.TABLES b
  13. WHERE a.TABLE_SCHEMA=b.TABLE_SCHEMA
  14. AND a.TABLE_SCHEMA='test'
  15. AND a.TABLE_NAME=b.TABLE_NAME;


  1. -- 索引信息
  2. SELECT
  3. TABLE_SCHEMA,
  4. TABLE_NAME,
  5. NON_UNIQUE,
  6. INDEX_NAME,
  7. SEQ_IN_INDEX,
  8. COLUMN_NAME,
  9. INDEX_TYPE,
  10. CONCAT(COMMENT,INDEX_COMMENT) INDEX_COMMENT
  11. FROM INFORMATION_SCHEMA.STATISTICS
  12. WHERE TABLE_SCHEMA = 'test'
  13. ORDER BY TABLE_SCHEMA,TABLE_NAME,INDEX_NAME,SEQ_IN_INDEX;


--注意组合索引的字段顺序,以及约束。

  1. -- 索引信息 方便生成alter语句
  2. SELECT
  3. a.TABLE_SCHEMA,
  4. a.TABLE_NAME,
  5. a.INDEX_NAME,
  6. MAX(a.NON_UNIQUE) NON_UNIQUE,
  7. MAX(a.INDEX_TYPE) INDEX_TYPE,
  8. MAX(a.INDEX_COMMENT) INDEX_COMMENT,
  9. GROUP_CONCAT(a.COLUMN_NAME) COLUMN_NAME
  10. FROM (SELECT
  11. TABLE_SCHEMA,
  12. TABLE_NAME,
  13. NON_UNIQUE,
  14. INDEX_NAME,
  15. SEQ_IN_INDEX,
  16. COLUMN_NAME,
  17. INDEX_TYPE,
  18. CONCAT(COMMENT,INDEX_COMMENT) INDEX_COMMENT
  19. FROM INFORMATION_SCHEMA.STATISTICS
  20. WHERE TABLE_SCHEMA = 'test'
  21. ORDER BY TABLE_SCHEMA,TABLE_NAME,INDEX_NAME,SEQ_IN_INDEX) a
  22. GROUP BY a.TABLE_SCHEMA,a.TABLE_NAME,a.INDEX_NAME;



声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/一键难忘520/article/detail/914103
推荐阅读
相关标签
  

闽ICP备14008679号