MySQL的三种属性约束(性别默认男女),简单易懂
1、DEFAULT:默认值约束好比当插入一些数据为空大概没有插入数据的时间,我们可以给一个默认值
mysql> CREATE TABLE students (
-> no INT,
-> name VARCHAR(32),
-> sex CHAR(1) DEFAULT '男',
-> age INT(3),
-> email VARCHAR(255)
-> );
Query OK, 0 rows affected, 1 warning (0.01 sec)
mysql> desc students
-> ;
+-------+--------------+------+-----+---------+-------+
| Field | Type | Null | Key | Default | Extra |
+-------+--------------+------+-----+---------+-------+
| no | int | YES| | NULL | |
| name| varchar(32)| YES| | NULL | |
| sex | char(1) | YES| | 男 | |
| age | int | YES| | NULL | |
| email | varchar(255) | YES| | NULL | |
+-------+--------------+------+-----+---------+-------+
5 rows in set (0.00 sec) 插入语句进行验证:
mysql> insert into students(no,name,age,email) values(1,'www',18,'123@qq.com');
Query OK, 1 row affected (0.01 sec)
mysql> select * from students;
+------+------+------+------+------------+
| no | name | sex| age| email |
+------+------+------+------+------------+
| 1 | www| 男 | 18 | 123@qq.com |
+------+------+------+------+------------+
1 row in set (0.00 sec)
mysql> insert into students(no,name,sex,age,email) values(2,'zzz','女',18,'123@qq.com');
Query OK, 1 row affected (0.00 sec)
mysql> select * from students;
+------+------+------+------+------------+
| no | name | sex| age| email |
+------+------+------+------+------------+
| 1 | www| 男 | 18 | 123@qq.com |
| 2 | zzz| 女 | 18 | 123@qq.com |
+------+------+------+------+------------+
2 rows in set (0.00 sec) (如下同理)
2、使用ENUM类型限定字段取值
ENUM是一个字符串对象,其值是从列创建时界说的答应值列表中选择的
CREATE TABLE student (
name VARCHAR(32),
sex ENUM('男', '女'),
age INT(3),
email VARCHAR(255)
); 3、CHECK 查抄约束
注意:(CHECK 约束:用于限定列中的值的范围,MySQL5.7不支持该约束,但写入语句不会报错,MySQL8.0版本支持该约束。)
create table test_user
(
id int primary key,
name VARCHAR(20),
sex VARCHAR(1),
check (sex='男'or sex='女')
);
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]