MySQL数据库基础(九):SQL约束

03-11 阅读 0评论

MySQL数据库基础(九):SQL约束

MySQL数据库基础(九):SQL约束,MySQL数据库基础(九):SQL约束,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,我们,设置,第2张
(图片来源网络,侵删)

文章目录

SQL约束

一、主键约束

二、非空约束

三、唯一约束

四、默认值约束

MySQL数据库基础(九):SQL约束,MySQL数据库基础(九):SQL约束,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,我们,设置,第3张
(图片来源网络,侵删)

五、外键约束(了解)

六、总结


SQL约束

一、主键约束

  1. PRIMARY KEY 约束唯一标识数据库表中的每条记录。
  2. 主键必须包含唯一的值。
  3. 主键列不能包含 NULL 值。
  4. 每个表都应该有一个主键,并且每个表只能有一个主键。

遵循原则:

  1. 主键应当是对用户没有意义的
  2. 永远也不要更新主键。
  3. 主键不应包含动态变化的数据,如时间戳、创建时间列、修改时间列等。
  4. 主键应当由计算机自动生成。

创建主键约束:创建表时,在字段描述处,声明指定字段为主键

MySQL数据库基础(九):SQL约束

删除主键约束:如需撤销 PRIMARY KEY 约束,请使用下面的 SQL

MySQL数据库基础(九):SQL约束,MySQL数据库基础(九):SQL约束,词库加载错误:未能找到文件“C:\Users\Administrator\Desktop\火车头9.8破解版\Configuration\Dict_Stopwords.txt”。,使用,我们,设置,第5张
(图片来源网络,侵删)
alter table persons2 drop primary key;

MySQL数据库基础(九):SQL约束

补充:自动增长

我们通常希望在每次插入新记录时,数据库自动生成字段的值。

我们可以在表中使用 auto_increment(自动增长列)关键字,自动增长列类型必须是整型,自动增长列必须为键(一般是主键)。

下列 SQL 语句把 "Persons" 表中的 "Id" 列定义为 auto_increment 主键

create table persons3(
	id int auto_increment primary key,
	first_name varchar(255),
	last_name varchar(255),
	address varchar(255),
	city varchar(255)
) default charset=utf8;

向persons添加数据时,可以不为Id字段设置值,也可以设置成null,数据库将自动维护主键值:

insert into persons3(first_name,last_name) values('Bill','Gates');
insert into persons3(id,first_name,last_name) values(null,'Bill','Gates');

运行效果:

MySQL数据库基础(九):SQL约束

二、非空约束

NOT NULL 约束强制列不接受 NULL 值。

NOT NULL 约束强制字段始终包含值。这意味着,如果不向字段添加值,就无法插入新记录或者更新记录。

下面的 SQL 语句强制 "id" 列和 "last_name" 列不接受 NULL 值:

MySQL数据库基础(九):SQL约束

 

三、唯一约束

UNIQUE 约束唯一标识数据库表中的每条记录。

UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。

PRIMARY KEY 拥有自动定义的 UNIQUE 约束。

请注意: 每个表可以有多个 UNIQUE 约束,但是每个表只能有一个 PRIMARY KEY 约束。

MySQL数据库基础(九):SQL约束 

四、默认值约束

default 默认值

五、外键约束(了解)

外键约束(多表关联使用)

比如:有两张数据表,这两个数据表之间有联系,通过了某个字段可以建立连接,这个字段在其中一个表中是主键,在另外一张表中,我们就把其称之为外键。

六、总结

主键约束:唯一标示,不能重复,不能为空。

  • 主键应当是对用户没有意义的
  • 永远也不要更新主键。
  • 主键不应包含动态变化的数据,如时间戳、创建时间列、修改时间列等。
  • 主键应当由计算机自动生成。

    自动增长:

    我们可以在表中使用 auto_increment(自动增长列)关键字,自动增长列类型必须是整型,自动增长列必须为键(一般是主键)。

    非空约束:

    NOT NULL 约束强制列不接受 NULL 值。

    唯一约束:

    • UNIQUE 约束唯一标识数据库表中的每条记录。
    • UNIQUE 和 PRIMARY KEY 约束均为列或列集合提供了唯一性的保证。
    • PRIMARY KEY 拥有自动定义的 UNIQUE 约束。
      • 📢博客主页:https://lansonli.blog.csdn.net

        • 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正!

          • 📢本文由 Lansonli 原创,首发于 CSDN博客🙉

          • 📢停下休息的时候不要忘了别人还在奔跑,希望大家抓紧时间学习,全力奔赴更美好的生活✨


免责声明
本网站所收集的部分公开资料来源于AI生成和互联网,转载的目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。
文章版权声明:除非注明,否则均为主机测评原创文章,转载或复制请以超链接形式并注明出处。

发表评论

快捷回复: 表情:
评论列表 (暂无评论,人围观)

还没有评论,来说两句吧...

目录[+]