当前位置:网站首页 > SQL数据库编程 > 正文

mysql主键约束名(sql主键约束的作用)



约束概述

约束其实就是一种限制,用于修饰表中的列. 通过这种限制来保证表中数据的正确性、有效性和完整性。

约束的类型

1.1 主键的作用

用来标注一条记录的唯一性,每个表都应该有一个主键,并且每个表只能有一个主键。有些记录的 name,age,score 字段的值都一样时,那么就没法区分这些数据,造成数据库的记录冗余不唯一,这样就不方便管理数据

哪个字段应该作为表的主键? 通常不用业务字段作为主键,单独给每张表设计一个id的字段,把id作为主键。主键是给数据库和程序使用的,不是给最终的客户使用的。所以主键有没有含义没有关系,只要不重复,非空就行。

1.2 创建主键

创建主键方式:

具体操作:

1.2.1 创建表用户表, 包含字段(id, name)将id做为主键
方式1: 建表时在字段的约束区添加主键约束

执行如下:

方式2: 建表时在约束区添加主键约束

执行如下:

方式3: 创建完表后,通过修改表结构添加主键约束

执行如下:

1.2.2 创建表用户表, 包含字段(id, name) 将id和name做为联合主键

上面我们将 id 作为单一主键,而还有多个字段作为 联合主键的情况,如下:

image-

image-

“注意 : 一张表中只有一个主键 , 主键可以为多个字段 , 不过我们一般增加一个字段 id 来作为主键. ”

执行如下:

1.3 删除主键

ALTER TABLE 表名 DROP PRIMARY KEY;

具体操作:

执行如下:

1.4 主键自增 AUTO_INCREMENT

主键如果让我们自己添加很有可能重复,我们通常希望在每次插入新记录时,数据库自动生成主键字段的值 表示自动增长(字段类型是整型数字)

具体操作:

创建学生表user5, 包含字段(id, name)将id做为主键并自动增长

执行如下:

DELETE和TRUNCATE的区别

下面我们来演示一下:

演示 DELETE 删除表数据 对于 自增字段的影响
演示 TRUNCATE 删除表数据 对于 自增字段的影响
修改表的主键自增初始值

在这张表中这个字段的值不能重复

2.1 唯一约束的基本格式

字段名 字段类型 UNIQUE

2.2 实现唯一约束

具体操作:

执行如下:

被修饰的这个字段必须设置值,不能是NULL

3.1 非空约束的基本格式

字段名 字段类型 NOT NULL

3.2 实现非空约束

具体操作:

执行如下:

往表中添加数据时,如果不指定这个字段的数据,就使用默认值

4.1 默认值格式

字段名 字段类型 DEFAULT 默认值

4.2 实现字段默认值

具体操作:

执行如下:

到此这篇mysql主键约束名(sql主键约束的作用)的文章就介绍到这了,更多相关内容请继续浏览下面的相关推荐文章,希望大家都能在编程的领域有一番成就!

版权声明


相关文章:

  • 为什么用redis不用mysql(为什么要用redis不用mysql)2025-06-28 19:27:06
  • sql文件如何打开运行(sql文件怎么打开、运行)2025-06-28 19:27:06
  • oracal和mysql的区别(oracle和mysql区别大吗)2025-06-28 19:27:06
  • mysql主键用uuid(mysql主键用什么类型)2025-06-28 19:27:06
  • pyspark读取mysql(pyspark.sql)2025-06-28 19:27:06
  • sql中循环更新对应主键的时间(sql中循环更新对应主键的时间怎么算)2025-06-28 19:27:06
  • sql里循环怎么用(sql循环语句loop)2025-06-28 19:27:06
  • pymysql 查询(Pymysql查询返回的结果)2025-06-28 19:27:06
  • sql中循环(sql中循环查询)2025-06-28 19:27:06
  • sql文件转csv文件(sql语句导出csv文件)2025-06-28 19:27:06
  • 全屏图片