MYSQL笔记:约束条件

MYSQL笔记:约束条件

主键约束

不能为空,值必须是不同的(唯一性)

一个表只能修饰一个主键

sql 复制代码
PRIMARY KEY

自增约束

sql 复制代码
AUTO_INCREMENT

唯一键约束

可以为空

sql 复制代码
unique

非空约束

not null

默认值约束

default

外键约束

foreign key

外键,存储函数,存储过程,触发器,在后端用的不多,限制逻辑代码逻辑是由mysql本身控制的。

例子

sql 复制代码
CREATE TABLE user(
id INT unsigned PRIMARY KEY AUTO_INCREMENT COMMENT ' 用户id',
nickname varchar(50) UNIQUE NOT NULL COMMENT'用户名称',
age TINYINT UNSIGNED NOT NULL  DEFAULT 18,
sex ENUM('male','famale'));
bash 复制代码
mysql> show table;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| user           |
+----------------+
1 row in set (0.00 sec)

mysql> desc user;
+----------+-----------------------+------+-----+---------+----------------+
| Field    | Type                  | Null | Key | Default | Extra          |
+----------+-----------------------+------+-----+---------+----------------+
| id       | int(10) unsigned      | NO   | PRI | NULL    | auto_increment |
| nickname | varchar(50)           | NO   | UNI | NULL    |                |
| age      | tinyint(3) unsigned   | NO   |     | 18      |                |
| sex      | enum('male','famale') | YES  |     | NULL    |                |
+----------+-----------------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
相关推荐
AI视觉网奇几秒前
ue5 设置分辨率笔记
笔记·ue5
摇滚侠14 分钟前
尚硅谷新版 Maven 教程(高效入门 Maven,上手又快又稳),配置 Maven,笔记 6、7
android·笔记·maven
菩提小狗16 分钟前
src漏洞挖掘思路|网络安全|漏洞挖掘|笔记
笔记·安全·web安全
n***333519 分钟前
MySQL数据可视化实战指南
数据库·mysql·信息可视化
時肆48526 分钟前
MySQL数据可视化实战指南
数据库·mysql·信息可视化
长路归期无望30 分钟前
一步步入门机器人【Arduino基础】
开发语言·经验分享·笔记·学习·机器人
物联网牛七七31 分钟前
2、stm32f407学习笔记-存储器和寄存器以及映射
笔记·stm32·学习
Moonquakes54040 分钟前
嵌入式学习基础笔记(51)
笔记·学习
麦聪聊数据43 分钟前
后端不再是瓶颈:如何通过“API 编排协作”重塑数据交付流程?
数据库·sql·mysql
尽兴-1 小时前
深入理解MySQL EXPLAIN工具与索引优化最佳实践
mysql·adb·dba·索引·explain·索引优化