自己做网站免费,定制营销产生的原因,深圳电商网站设计公司,营销网站域名设计目录
1. NULL约束
2. 唯一#xff08;UNIQUE#xff09;约束 3. 默认值#xff08;DEFAULT#xff09;约束
4. 主键约束 5. 外键约束
6. CHECK约束 数据库约束是一种用于确保数据库中数据完整性和一致性的规则或条件。这些约束可以应用于表、列或整个数据库#xff0…目录
1. NULL约束
2. 唯一UNIQUE约束 3. 默认值DEFAULT约束
4. 主键约束 5. 外键约束
6. CHECK约束 数据库约束是一种用于确保数据库中数据完整性和一致性的规则或条件。这些约束可以应用于表、列或整个数据库以确保数据的正确性和可靠性。主要的约束类型有以下
NOT NULL - 指示某列不能存储 NULL 值。UNIQUE - 保证某列的每行必须有唯一的值。确保列中的数据是唯一的但与主键约束不同的是唯一约束允许空值DEFAULT - 规定没有给列赋值时的默认值。 定义列的默认值如果插入行时未提供该列的值则将使用默认值。PRIMARY KEY - NOT NULL 和 UNIQUE 的结合。确保某列或两个列多个列的结合有唯一标 识有助于更容易更快速地找到表中的一个特定的记录。FOREIGN KEY - 保证一个表中的数据匹配另一个表中的值的参照完整性。CHECK - 保证列中的值符合指定的条件。对于MySQL数据库对CHECK子句进行分析但是忽略 CHECK子句。用于限制列中数据的范围例如确保年龄列中的值大于等于18。
1. NULL约束
创建表时可以指定某列不为空。比如我们想要创建一个学生表学生表的id属性代表学生的在数据库中的编号我们想要指定id是不可以为空的。这样我们就可以维塔加上一个非空约束。
-- 重新设置学生表结构
DROP TABLE IF EXISTS student;CREATE TABLE student (id INT NOT NULL,sn INT,name VARCHAR(20),qq_mail VARCHAR(20));
2. 唯一UNIQUE约束
还是上面的例子我们想要学生的学号sn为不重复的此时就可以为数据库的id列加上一个UNIQUE约束。
-- 重新设置学生表结构
DROP TABLE IF EXISTS student;CREATE TABLE student (id INT NOT NULL,sn INT UNIQUE,name VARCHAR(20) ,qq_mail VARCHAR(20)); 3. 默认值DEFAULT约束
比如我们想要再插入一条学生数据的时候想要name列暂时不添加设定一个默认值设定默认值为unknown。
-- 重新设置学生表结构
DROP TABLE IF EXISTS student;CREATE TABLE student (id INT NOT NULL,sn INT UNIQUE,name VARCHAR(20) DEFAULT unkown,qq_mail VARCHAR(20));
4. 主键约束
这个约束就是非空加上UNIQUE。
-- 重新设置学生表结构
DROP TABLE IF EXISTS student;CREATE TABLE student (id INT NOT NULL PRIMARY KEY,sn INT UNIQUE,name VARCHAR(20) DEFAULT unkown,qq_mail VARCHAR(20));
对于整数类型的主键常配搭自增长auto_increment来使用。插入数据对应字段不给值时使用最大 值1。
-- 主键是 NOT NULL 和 UNIQUE 的结合可以不用 NOT NULLid INT PRIMARY KEY auto_increment, 5. 外键约束
外键约束在数据库设计中扮演着至关重要的角色它不仅确保了数据的完整性和一致性还提供了建立表之间关系的有效方式。他的基本使用语法是foreign key (字段名) references 主表(列)。
案例
创建班级表classesid为主键有使用MySQL关键字作为字段时需要使用来标识
-- 创建班级表有使用MySQL关键字作为字段时需要使用来标识
DROP TABLE IF EXISTS classes;CREATE TABLE classes (id INT PRIMARY KEY auto_increment,name VARCHAR(20),desc VARCHAR(100));
创建学生表student一个学生对应一个班级一个班级对应多个学生。使用id为主键 classes_id为外键关联班级表id
-- 重新设置学生表结构
DROP TABLE IF EXISTS student;CREATE TABLE student (id INT PRIMARY KEY auto_increment,sn INT UNIQUE,name VARCHAR(20) DEFAULT unkown,qq_mail VARCHAR(20),classes_id int,FOREIGN KEY (classes_id) REFERENCES classes(id)
);
6. CHECK约束
CHECK约束是一种用于在插入或更新数据时验证特定条件的约束。它允许你指定一个条件当条件为真时才允许插入或更新数据。这个条件可以是一个简单的逻辑表达式也可以是一个复杂的函数或子查询。
drop table if exists test_user;create table test_user (id
int,name varchar(20),sex varchar(1),check (sex 男 or sex女));