information_schema.columns 学习

每一个表中的每一列都会在information_schema.columns表中对应一行

1、informaiton_schema.columns 常用列:

  1、table_catalog          :不管是table | view 这个列的值总是def

  2、table_schema           :表 | 视图所在的数据库名

  3、table_name            :表名 | 视图名

  4、column_name           :列名

  5、column_default           :列的默认值

  6、is_nullable             :是否可以取空值

  7、data_type             :列的数据类型

  8、character_maximum_length    :列的最大长度(这列只有在数据类型为char | varchar 时才有意义)

  9、column_type           :列类型这个类型比data_type列所指定的更加详细,如data_type 是int 而column_type 就有可以能是int(11)

  10、column_key           :列上的索引类型 主键-->PRI  | 唯一索引 -->UNI  一般索引 -->MUL

 

2、例子

查看tempdb 库中的列信息

select 
    table_schema,table_name,column_name,column_type,column_default,is_nullable,column_key

from
    information_schema.columns

where table_schema='tempdb';


+--------------+------------+-------------+-------------+----------------+-------------+------------+
| table_schema | table_name | column_name | column_type | column_default | is_nullable | column_key |
+--------------+------------+-------------+-------------+----------------+-------------+------------+
| tempdb       | t          | x           | int(11)     | NULL           | NO          | PRI        |
| tempdb       | t          | y           | varchar(32) | hello world... | NO          | MUL        |
| tempdb       | t2         | id          | int(11)     | NULL           | NO          | PRI        |
| tempdb       | t2         | age         | int(11)     | 0              | NO          | PRI        |
| tempdb       | t2         | name        | varchar(10) | NULL           | YES         |            |
| tempdb       | v_t        | x           | int(11)     | 0              | NO          |            |
| tempdb       | v_t        | y           | varchar(32) | hello world... | NO          |            |
+--------------+------------+-------------+-------------+----------------+-------------+------------+

 

posted on 2016-08-21 20:53  蒋乐兴的技术随笔  阅读(3662)  评论(0编辑  收藏  举报

导航