My_SQ主键,外键
1、default ;设置默认参数,且不能更改。
2、not null ;传参数时不能为空。
3、unique ;在该列不能value 不能重复。
4、primary key ;设置主键,不能含有重复的value。
5、foreign key ……reference….. ; 保证主键和外键数据的一致性。
mysql> create table teacher
-> (
-> teacher_wife char(10),
-> teacher_id int primary key,
-> teatchr_age int not null,
-> teacher_name char(20),
-> teacher_money int default ‘3000’
-> teacher_geade int,
-> unique(teacher_wife)
-> );
mysql> create table student
->(
-> student_id int primary key,
-> student_age int not null,
-> foreign key(student_id) references teacher(teacher_id)
->);
一、默认参数
teacher_money int default ‘3000’
二、插入不能为空
insert into teacher(teacher_wife,teacher_age) values
(“whose” ) 这个则会报错,teacher_age必须传参
teatchr_age int not null,
三、不能含有重复的值
unique(teacher_wife)
四、保证主键的独一性
第3个复合主键则是当传的两个参都相同时候才会报错。
teacher_id int primary key,
primary key teacher_id,
primary key( teacher_id,teacher_age)
五、保证数据的一致性
最不好理解的一个。外键,为了保证数据的一致性。
在插入数据时候,必须得保证在主键里面有了对应的值,才行,删除也是,必须先删除主键。
foreign key(student_id) references teacher(teacher_id)
My_SQ主键,外键的更多相关文章
- EF中主表和附表一起提交的话,如果主附表的主键外键已经设定。
EF中主表和附表一起提交的话,如果主附表的主键外键已经设定,如果新增同时新增主表和附表的记录,那么在EF同时提交时,不需要人为的设定附表的主表的主键值,EF会自动为附表添加外键值.
- 第15课-数据库开发及ado.net-数据库介绍,主键,外键,启动数据库,数据库身份验证方式,建表,分离数据库
第15课-数据库开发及ado.net 数据库介绍,主键,外键,启动数据库,数据库身份验证方式,建表,分离数据库 1. 学习方法 2. 多涨见识 3. 比自己强的人一起,学习更强:比自己更聪明的人 ...
- 关系型数据库——主键&外键的
一.什么是主键.外键: 关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能唯一标识一条记录,该属性组就可以成为一个主键 比如 学生表(学号,姓名,性别,班级) 其中每个学 ...
- Django笔记&教程 4-3 模型(models)主键外键
Django 自学笔记兼学习教程第4章第3节--模型(models)主键外键 点击查看教程总目录 参考:https://docs.djangoproject.com/en/2.2/ref/models ...
- 2016年11月17日--SQL主、外键,子查询
主键 数据库主键是指表中一个列或列的组合,其值能唯一地标识表中的每一行.这样的一列或多列称为表的主键,通过它可强制表的实体完整性.当创建或更改表时可通过定义 PRIMARY KEY约束来创建主键.一个 ...
- SQL server 子查询、设置主键外键、变量及变量查询
一.子查询 子查询,又叫做嵌套查询. 将一个查询语句做为一个结果集供其他SQL语句使用,就像使用普通的表一样,被当作结果集的查询语句被称为子查询. 子查询有两种类型: 一种是只返回一个单值的子查询,这 ...
- SqlServer主键外键添加及判断表是否存在
GO --判断表是否存在方式1 if object_id(N'EF_User',N'U') is null --判断表是否存在方式2 --if not exists (select * from db ...
- CUBRID学习笔记 21 查看主键外键索引
命令 show create table game; game是表名 在web管理中,请在sql标签中查,不要在query中执行. show create table game; === <Re ...
- Oracle数据库作业-2 添加主键 外键
一.在表student中添加主键sno
- SQL主、外键,子查询
主键 数据库主键是指表中一个列或列的组合,其值能唯一地标识表中的每一行.这样的一列或多列称为表的主键,通过它可强制表的实体完整性.当创建或更改表时可通过定义 PRIMARY KEY约束来创建主键.一个 ...
随机推荐
- json,pickle,shelve模块,xml处理模块
常用模块学习—序列化模块详解 什么叫序列化? 序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes. 为什么要序列化? 你打游戏过程 ...
- listview--Java泛型应用之打造Android万能ViewHolder-超简洁写法
版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/u010785585/article/details/52808656 转载请注明出处:http:// ...
- MySQL查询语句报错 sql_mode=only_full_group_by 问题
升级MySQL到5.7后,查询语句总是报sql_mode=only_full_group_by问题,总结归纳了两种解决方案,推存第二种解决方案. 报错信息: [Err] 1055 - Expressi ...
- Oracle数据库ORA-01109 数据库未打开
引致 https://blog.csdn.net/colinmok/article/details/39504879?locationNum=11&fps=1 感谢! 在plsql创建了2表 ...
- 朴素贝叶斯法(naive Bayes algorithm)
对于给定的训练数据集,朴素贝叶斯法首先基于iid假设学习输入/输出的联合分布:然后基于此模型,对给定的输入x,利用贝叶斯定理求出后验概率最大的输出y. 一.目标 设输入空间是n维向量的集合,输出空间为 ...
- Java——IO流 对象的序列化和反序列化流ObjectOutputStream和ObjectInputStream
对象的输入输出流 : 主要的作用是用于写入对象信息与读取对象信息. 对象信息一旦写到文件上那么对象的信息就可以做到持久化了 对象的输出流: ObjectOutputStream 对象的输入流: Ob ...
- sql_demo
SELECT M.INSTNCODE, M.METHODCODE, M.CCYPAIRCODE, M.DIR, M.PRD, M.EXCHANGERATE, M.NEARRSKAMOUNT, M.TR ...
- php中一个"异类"语法: $a && $b = $c; 【转载】
$a = 1;$b = 2;$c = 3;$a && $b = $c;echo "a:$a";echo "b:$b";echo "c: ...
- hadoop单机模式安装流程
这里的安装是在Linux系统上安装的 参考博客 : https://blog.csdn.net/cafebar123/article/details/73500014 https://blog.csd ...
- spring boot aop 自定义注解 实现 日志检验 权限过滤
核心代码: package com.tran.demo.aspect; import java.lang.reflect.Method; import java.time.LocalDateTime; ...