MySQL笔记2.4表的约束,2.5设置表的字段值自动增加

Posted Aoian51CTO

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySQL笔记2.4表的约束,2.5设置表的字段值自动增加相关的知识,希望对你有一定的参考价值。

2.4表的约束

MySQL笔记2.4表的约束,2.5设置表的字段值自动增加_其他

  • 防止数据表中插入错误的数值,而定义的维护数据库完整性的规则
约束条件 说明
PRIMARY KEY 主键约束,用于唯一标识对应的记录(主键唯一表示,值不能为空null );
FOREIGN KEY 外键约束
NOT NULL 非空约束
UNIQUE 唯一性约束
DEFAULT 默认值约束,用于设置字段的默认值

2.4.1 主键约束;

注意:每个数据表中最多只能有一个主键约束,定义为primary key的字段不能有重复值且不能为null值

  • 1.单字段约束
语法: 字段名 数据类型 PRIMARY KEY
例如:创建一个数据表ex1,并设置id作为主键,SQL语句如下:
CREATE TABLE ex1(id INT PRIMARY KEY,
				name VARCHAR(20),
				grade FLOAT);
  • 2.多字段主键
语法:PRIMARY KAY(字段名1,字段名2,***字段名n)
例如:创建一个数据表ex2,在表中将stu_id和course_id两个字段共同作为主键,SQL语句如下:
CREATE TABLE ex2(stu_id INT,
				course_id FLOAT,
				PRIMARY KEY(stu_id,course_id)
				);

2.4.2非空约束

  • 非空约束指的是字段的值不能为null,在mysql中,非空约束是通过NOT NULL定义的;
语法: 字段名 数据类型 NOT NULL;
例如:CREATE TABLE ex1(id INT PRIMARY KEY,
				name VARCHAR(20) NOT NULL,
				grade FLOAT not null
				);

2.4.3唯一约束

  • 保证数据表中字段的唯一性,即表中字段的值不能重复出现
语法: 字段名 数据类型 UNIQUE;
CREATE TABLE ex1(id INT PRIMARY KEY,
				name VARCHAR(20) NOT NULL,
				grade FLOAT UNIQUE
				);
ID为主键,name的字段不能为空值,grade字段为唯一值,该值不能重复

2.4.4默认约束

  • 用于给数据表中的字段添加指定默认值
语法:字段名 数据类型 DEFAULT 默认值;
例如:CREATE TABLE ex1(id INT PRIMARY KEY,
				name VARCHAR(20) NOT NULL,
				grade FLOAT default 0/*默认值为0*/
				);

2.5设置表的字段值自动增加

  • 在数据表中,若想为表中插入的新记录自动生成唯一的ID,可以使用AUTO_INCREMENT约束来实现。
    AUTO_INCREMENT约束的字段可以是任何整数类型,默认情况下,该字段的值是从1开始自增的
语法: 字段名 数据类型 AUTO_INTCREMENT;
例如:创建一个数据表ex5,将表中的id字段设置为自动增加,SQL语句如下:
CREATE TABLE ex1(id INT PRIMARY KEY AOTO_INCREMENT, 
				name VARCHAR(20) NOT NULL,
				grade FLOAT UNIQUE
				);

以上是关于MySQL笔记2.4表的约束,2.5设置表的字段值自动增加的主要内容,如果未能解决你的问题,请参考以下文章

MySQL之表的约束

MySQL之表的约束

表的约束

sqlserver 下 修改表的某个字段默认值语法是怎么样的

132 MySQL表的完整性约束

MySQL学习笔记