mysql表属性索引约束

Posted lvyong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mysql表属性索引约束相关的知识,希望对你有一定的参考价值。

1、表属性

  创建表的基本语法: 

    create table 【if not exists】 表名 (字段列表 【,索引或约束列表】)【表选项列表】

  其中,字段列表格式如下:

    字段名 类型 【属性列表】,

    字段名 类型 【属性列表】...

  属性列表中各个属性之间用空格隔开。

  常用的字段属性:

auto_increment 设置字段值自动增长,用于整数类型
primary key 设置字段为主键,此时该字段的值可以“唯一确定”一行数据
unique key 设置字段为唯一的,在整个数据表中不会重复
not null 设置字段不能为null,如果不指定该属性,那么字段的值默认是可以为null的
default      设置字段的默认值,插入数据的时候,若不指定该字段你的值,会使用默认值填充。
comment 设置字段的说明

  说明:primary key跟unique key都确定了字段的唯一性,由这两个属性修饰的字段都能唯一的确定一行数据,区别在于primary key不能为null(指定了primary key的时候,默认的指定了not null属性),而unique key则可以为null。可以说,primary key是特殊的unique key。

代码:

/*创建表,注意属性*/
mysql> create table item_properties_table( -> id int auto_increment primary key, -> name varchar(20) not null unique key, -> pwd varchar(48) not null, -> age tinyint default 18, -> email varchar(50) comment 电子邮件 -> ); Query OK, 0 rows affected (0.02 sec)
/*查看表结构,主要是为了查看comment*/ mysql
> show full columns from item_properties_table; +-------+-------------+-----------------+------+-----+---------+----------------+---------------------------------+--------------+ | Field | Type | Collation | Null | Key | Default | Extra | Privileges | Comment | +-------+-------------+-----------------+------+-----+---------+----------------+---------------------------------+--------------+ | id | int(11) | NULL | NO | PRI | NULL | auto_increment | select,insert,update,references | | | name | varchar(20) | utf8_general_ci | NO | UNI | NULL | | select,insert,update,references | | | pwd | varchar(48) | utf8_general_ci | NO | | NULL | | select,insert,update,references | | | age | tinyint(4) | NULL | YES | | 18 | | select,insert,update,references | | | email | varchar(50) | utf8_general_ci | YES | | NULL | | select,insert,update,references | 电子邮件 | +-------+-------------+-----------------+------+-----+---------+----------------+---------------------------------+--------------+ 5 rows in set (0.00 sec) mysql>

 

2、索引

 

以上是关于mysql表属性索引约束的主要内容,如果未能解决你的问题,请参考以下文章

Mysql建表的时候创建索引

MySQL笔记--- 创建表;插入,修改,删除数据;主键,外键约束;事务;索引;视图;三范式;

Linux云计算-MySQL-表操作-索引-外键-视图

Oracle查看表索引、主键、外键、约束

MYSQL中唯一约束和唯一索引的区别

Mysql的InnoDB引擎-4.表