MySQl数据约束练习
默认值约束
1 CREATE TABLE USER(
2 uid INT,
3 uname VARCHAR(10),
4 address VARCHAR(30) DEFAULT '山东省'
5 )
6 DROP TABLE USER;
7 SELECT * FROM USER;
8 INSERT INTO USER(uid,uname) VALUES(1,'张三');
9 INSERT INTO USER VALUES(2,'李四','河南省');
10 INSERT INTO USER VALUES(3,'李四',NULL);
非空约束
1 CREATE TABLE USER(
2 uid INT NOT NULL,
3 uname VARCHAR(10),
4 address VARCHAR(30) DEFAULT '山东省'
5 )
6 INSERT INTO USER(uid,uname) VALUES(1,'张三');
唯一约束
1 CREATE TABLE USER(
2 uid INT UNIQUE,
3 uname VARCHAR(10),
4 address VARCHAR(30) DEFAULT '山东省'
5 )
6 INSERT INTO USER(uid,uname) VALUES(1,'张三');
7 INSERT INTO USER(uid,uname) VALUES(2,'张三');
主键约束(唯一+非空)
1)被约束的表称为副表,约束别人的表称为主表,外键设置在副表上的!!!
2)主表的参考字段通用为主键!
3)添加数据: 先添加主表,再添加副表
4)修改数据: 先修改副表,再修改主表
5)删除数据: 先删除副表,再删除主表
一个表内只能有一个主键。
1 CREATE TABLE USER(
2 uid INT PRIMARY KEY,
3 uname VARCHAR(10),
4 address VARCHAR(30) DEFAULT '山东省'
5 )
6 SELECT * FROM USER;
7 INSERT INTO USER(uid,uname) VALUES(1,'张三');
自增长约束AUTO_INCREMENT
1 CREATE TABLE USER(
2 uid INT PRIMARY KEY AUTO_INCREMENT,
3 uname VARCHAR(10),
4 address VARCHAR(30) DEFAULT '山东省'
5 )
6 INSERT INTO USER(uname) VALUES('张三');
零填充
1 CREATE TABLE USER(
2 uid INT(3) ZEROFILL PRIMARY KEY AUTO_INCREMENT,
3 uname VARCHAR(10),
4 address VARCHAR(30) DEFAULT '山东省'
5 )
6 INSERT INTO USER(uname) VALUES('张三');
delete from 清空表不能删除约束
1 DELETE FROM USER;
TRUNCATE TABLE 清空表可以删除约束
1 TRUNCATE TABLE USER;
外键约束(约束两种表的数据)
1 CREATE TABLE dept(
2 deptid INT PRIMARY KEY AUTO_INCREMENT,
3 deptname VARCHAR(10)
4 )
5 INSERT INTO dept(deptname) VALUES('软件开发部');
6 INSERT INTO dept(deptname) VALUES('软件测试部');
7 INSERT INTO dept(deptname) VALUES('软件运维部');
8 SELECT * FROM dept;
9 CREATE TABLE empt(
10 eid INT PRIMARY KEY AUTO_INCREMENT,
11 ename VARCHAR(5),
12 deptid INT,
13 CONSTRAINT dept_empt_fk FOREIGN KEY(deptid) REFERENCES dept(deptid)
14 )
新增副表
1 INSERT INTO empt(ename,deptid) VALUES('张三',1);
2 SELECT * FROM empt
修改主表
1 UPDATE dept SET deptname=2 WHERE deptid=1;
2 UPDATE empt SET deptid=3 WHERE eid=1;
删除主表
1 DELETE FROM dept WHERE deptid=2;
MySQl数据约束练习的更多相关文章
- Mysql数据约束 整理
数据约束 1.默认值: 作用: 当用户对使用默认值的字段不插入值的时候,就使用默认值. 注意: 1)对默认值字段插入null是可以的. 2)对默认值字段可以插入非null CREATE TABLE ...
- Java基础87 MySQL数据约束
1.默认值 -- 创建表student1,设置address字段有默认值 create table student1 ( id int, name ), address ) default '广东省深 ...
- MySQL数据约束
定义:建表时在各字段类型后设置,用来对用户操作表的数据进行约束. 代码: 1.默认值 : default ' ' 作用:当用户对使用默认值的字段不插入值的时候,就使用默认值(自动填充). 注意: ...
- MySQL数据约束和关联查询
1 默认值deafult:在建表的时候字段后使用 default ,默认值字段允许为null. 2 非空 not null:在建表的时候字段后使用 not null. 非空字段必须赋值,并且不能是n ...
- MYSQL中约束及修改数据表
MYSQL中约束及修改数据表 28:约束约束保证数据的完整性和一致性约束分为表级约束和列级约束约束类型包括: NOT NULL(非空约束) PRIMARY KEY(主键约束) UNI ...
- mysql 数据操作 单表查询 where 约束 目录
mysql 数据操作 单表查询 where约束 between and or mysql 数据操作 单表查询 where约束 is null in mysql 数据操作 单表查询 where约束 li ...
- mysql之约束以及修改数据表
数据约束的分类: ———————————————————————————————————————————————————— 外键约束的要求解析: //在my文件中的这句话代表着搜索引擎,如果不是的就需 ...
- Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle
Atitit. 数据约束 校验 原理理论与 架构设计 理念模式java php c#.net js javascript mysql oracle 1. 主键1 2. uniq index2 3. ...
- MySQL 之存储引擎与数据类型与数据约束
一.存储引擎场景 1.InnoDB 用于事务处理应用程序,支持外键和行级锁.如果应用对事物的完整性有比较高的要求,在并发条件下要求数据的一致性,数据操作除了插入和查询之外,还包括很多更新和删除操作,那 ...
随机推荐
- javascript DOM基础操作
DOM(Document Object Model)即文档对象模型,针对HTML和XML文档的API(应用程序接口).DOM描绘了一个层次化的节点树,运行开发人员添加.移除和修改页面的某一部分.DOM ...
- iOS.UI.UIWindow
UIWindow 1. UIWindow 2. UIWindow的使用场景 2.1 额外添加的Window需要手动进行旋转 最近有遇到一个UIWindow的使用场景:在ApplicationDeleg ...
- UI设计师经常去的五个网站
1.站酷 站酷(ZCOOL),中国人气设计师互动平台.深耕设计领域十年,站酷聚集了470万优秀设计师.摄影师.插画师.艺术家.创意人,设计创意群体中具有较高的影响力与号召力. 2.花瓣 花瓣网, ...
- Pycharm的常用快捷将
程序运行 Shift+alt+F10 执行程序 debug调试 Shift+alt+F9 Debug调试Shift + F9 对当前文件进行DebugF8 调试模式下 跳过F7 调试模式下 进入F9 ...
- swift 要点
swift 基本语法注意点 通常来说,编程语言教程中的第一个程序应该在屏幕上打印“Hello, world”.在 Swift 中,可以用一行代码实现 print("Hello, world! ...
- java 银联接口开发
http://blog.sina.com.cn/s/blog_6c868c470100ys59.html 在线接口文档:http://wenku.baidu.com/link?url=EUgAuOKz ...
- jvm 基础
1. JDK 包含 java 程序设计语言,JVM, Java API类库. java 开发最小环境 2. JRE : Java API类库中java se API 子集和java 虚拟机(HotSp ...
- mybatis 插入数据并返回主键值
<insert id="insert" parameterType="com.pojo.TSubject" useGeneratedKeys=" ...
- 【UI测试】--合理性
- Mvvm Light 无法添加MvvmView(Win81)的问题
After I create a MvvmLight(Win81) project, I want add a new view , but there is only MvvmView(Win8), ...