zoukankan      html  css  js  c++  java
  • information_schema.key_column_usage 学习

    information_schema.key_column_usage 表可以查看索引列上的约束;

    1、information_schema.key_column_usage 的常用列:

      1、constraint_catalog              :约束类型这个永远是def

      2、constraint_schema              :约束所在的数据库名

      3、constraint_name               :约束名

      4、table_catalog                 :表类型这个永远是def

      5、table_schema                  :表所在的数据库名

      6、column_name                  :索引所在的列名

      7、referenced_table_schema           :被引用表所在的数据库名

      8、referenced_table_name            :被引用的表名

      9、referenced_column_name           :被引用表的列名

    2、例子:

    通过information_schema.key_column_usage表来查看外键引用关系

      1、创建有主外键关系的表

    create table teacher(
    id int not null auto_increment,
    name varchar(16) not null,
    primary key pk_teacher(id)
    ) engine=innodb default char set utf8;
    
    
    
    create table student(
    id int not null auto_increment,
    name varchar(16) not null,
    teacher_id int not null,
    constraint pk_student__id primary key(id),
    constraint fk_stuent__teacher_id foreign key(teacher_id) references teacher(id)
    ) engine=innodb default char set utf8;

      2、查看索引列上的约束

    select * from KEY_COLUMN_USAGE where table_schema='tempdb' G
    *************************** 1. row ***************************
               CONSTRAINT_CATALOG: def
                CONSTRAINT_SCHEMA: tempdb
                  CONSTRAINT_NAME: PRIMARY
                    TABLE_CATALOG: def
                     TABLE_SCHEMA: tempdb
                       TABLE_NAME: student
                      COLUMN_NAME: id
                 ORDINAL_POSITION: 1
    POSITION_IN_UNIQUE_CONSTRAINT: NULL
          REFERENCED_TABLE_SCHEMA: NULL
            REFERENCED_TABLE_NAME: NULL
           REFERENCED_COLUMN_NAME: NULL
    *************************** 2. row ***************************
               CONSTRAINT_CATALOG: def
                CONSTRAINT_SCHEMA: tempdb
                  CONSTRAINT_NAME: fk_stuent__teacher_id
                    TABLE_CATALOG: def
                     TABLE_SCHEMA: tempdb
                       TABLE_NAME: student
                      COLUMN_NAME: teacher_id
                 ORDINAL_POSITION: 1
    POSITION_IN_UNIQUE_CONSTRAINT: 1
          REFERENCED_TABLE_SCHEMA: tempdb
            REFERENCED_TABLE_NAME: teacher
           REFERENCED_COLUMN_NAME: id
    *************************** 3. row ***************************
               CONSTRAINT_CATALOG: def
                CONSTRAINT_SCHEMA: tempdb
                  CONSTRAINT_NAME: PRIMARY
                    TABLE_CATALOG: def
                     TABLE_SCHEMA: tempdb
                       TABLE_NAME: teacher
                      COLUMN_NAME: id
                 ORDINAL_POSITION: 1
    POSITION_IN_UNIQUE_CONSTRAINT: NULL
          REFERENCED_TABLE_SCHEMA: NULL
            REFERENCED_TABLE_NAME: NULL
           REFERENCED_COLUMN_NAME: NULL
  • 相关阅读:
    2016华中农业大学预赛 E 想法题
    2016华中农业大学预赛 B 数学
    render()
    钩子函数
    redirect_uri域名与后台配置不一致,错误码:10003
    群发次数
    表名
    intval()函数
    render()
    $this->autoRender = false
  • 原文地址:https://www.cnblogs.com/JiangLe/p/5812613.html
Copyright © 2011-2022 走看看