数据库名词解释 主键外键检查 非空、唯一性约束 父表 子表
Oracle数据库中,约束具体包括非空(NOT NULL)约束、唯一键(UNIQUE)约束、主键(PRIMARY KEY)约束、外键(FOREIGN KEY)约束和检查(CHECK)约束五种。
1:主键(PRIMARY KEY)约束
什么是主键?在一张表中,用来唯一标识一条记录的字段集,叫做主关键字或者主关键码,简称主键(或主码),这里说"字段集"是因为主键可能用一个字段或者多个字段来表示。主键唯一确定每一条记录的完整性,其值不能重复,不能空值。可以由一列或者多列构成。举例来看:学生表(学号, 姓名, 性别,邮箱,专业编号),这里学号是主键,一个学号id就可以唯一标识一个学生的信息。另一个表:学生选课表(学号, 课程号, 成绩),这里(学号, 课程号)是主键,因为一个学号(即一个学生)可以选择多门课程,一个课程号(即一个课程)可以被多个学生选择,无法用一个字段来标识一条学生选课的信息记录,而使用(学号, 课程号)这两个字段作为关键字就可以唯一标识学生的选课信息。
2:外键(FOREIGN KEY)约束
什么是外键?一张表的非主属性是另一个表的主属性就是这个表的外键。这里有两个分别为: 学生表(学号, 姓名, 性别,邮箱,专业编号),专业信息表(专业编号,专业名称,专业备注信息)。学生表中主键是学号,专业信息表中主键是专业编号。学生表中的非主属性专业编号恰好是专业信息表中的主键。我们就称这个专业编号是学生表的外键。像这样,一个表的非主属性是另一个表的主属性,该非主属性就是外键
拓展概念:父表和子表
什么是父表和子表?有两张表A表和B表,表A中的一个字段id是外键,表B中的一个字段id是主键,那么称B为父表,A为子表。就是说一个表中外键字段(相当于这里的A表)是另一个表中(相当于这里的B表)的主键。 还是上面的两个表来举例理解:学生表(学号, 姓名, 性别,专业编号),专业信息表(专业编号,专业名称,专业备注信息)。这里学生表是子表,专业信息表是父表。
设置表的外键的作用在于建立与父表的联系,比如在专业信息表中某个专业编号的id为'1001',删除这个id后,则学生表中的专业编号id为'1001'的记录也随着删除,这样做的目的在于保证表的完整性。
3、非空约束(not null):
什么是非空约束?就是约束的字段,不能为NULL值,必须给定具体的数据,以保证该字段不为空。我们在创建表,给字段添加非空约束,设置后就不能给该字段定义为空值,此约束为列级约束(在建表说明约束时,只能跟在列级定义后)比如:创建学生表,可以设置姓名为非空约束,则姓名都是非空值,不能为空值。
4、唯一约束(unique):防止输入重复信息,约束的字段具有唯一性,不可重复【列级约束】 字段后加unique。比如我们创建学生表,则邮箱是唯一的,可以添加唯一性约束。
5、检查约束,对输入的值进行检查,限制输入的值。对该列数据的范围、格式的限制(如:年龄需要比0大、性别只能有两种等),【目前MYSQL不支持,oracle数据库支持】
表、字段、记录、属性、列、元组定义(自己看论坛学习的,可能有不对的地方,请大家指教)
一、字段:某一个事物的一个特征,或者说是属性,学生表中,的学号,姓名,性别等就是一个个属性。
二、记录(元组):事物特征的组合,可以描述一个具体的事物。比如学生表中,学号为1的那一整行,这一整行可以描述张三这个人的特征这样的一个具体事物。元组是记录的另个一称呼。
三、表:记录的组合 表示同一类事物的组合,表,相当于具有相似特征事物的一个集合。比如学生表,这就是一个表格,还可以由公司员工表,学校的教师表等。
四、列:字段的另一种称谓,比如学生表中的学号,姓名,性别等等。
五、元组:记录的另一种称谓,详见上面的记录。
参考:
https://www.cnblogs.com/myseries/p/5222659.html
https://www.cnblogs.com/seven7seven/p/3730825.html
https://blog.csdn.net/njyr21/article/details/79351818
https://blog.csdn.net/qq_40329222/article/details/79513301
https://blog.csdn.net/aiming66/article/details/51426263
数据库名词解释 主键外键检查 非空、唯一性约束 父表 子表相关推荐
- [数据库03]-约束(唯一性-主键-外键/存储引擎/事务/索引/视图/DBA命令/数据库设计三范式
[数据库03]-约束(唯一性-主键-外键)/存储引擎/事务/索引/视图/DBA命令/数据库设计三范式 一.约束 1.1 唯一性约束(unique) 1.2 主键约束 1.3 外键约束 二.存储引擎 2 ...
- 数据库 主键 外键 唯一键区别
下面我通过一个小栗子来说明我们应该如何选择主键,外键和唯一键. 现在我们想建立学生表,用来存储,一个系统的登陆信息.建表如下: create table student4 ( stu_id in ...
- mysql数据库(排序,聚合函数,分组,分页查询,union,连接查询,主键外键)
1.排序(order by) select * from stu order by age; -- 默认升序 升序 ASC 降序DESC -- DESC 具有查看表的结构的功能 desc stu; 不 ...
- mysql 主键外键sql_SQL外键VS主键说明了MySQL语法示例
mysql 主键外键sql A Foreign Key is a key used to link two tables. The table with the Foreign Key Constra ...
- MySQL 之 约束 (主键、唯一、非空、自增、外键)
MySQL 之 约束 (主键.唯一.非空.自增.外键) 目的:使得数据更准确,更完整. 约束的分类: 1.键约束 (1)主键约束 (2)唯一键约束 (3)外键约束 2.非空约束 3.默认值约束 4.自 ...
- 主键主键外键和索引_主键和外键的目的/用途是什么?
主键主键外键和索引 Primary and foreign keys are a way in which to constrain related data together to ensure d ...
- MySql数据库主键外键与数据库设计
MySql数据库主键外键与数据库设计 首先要指出的: 列.字段.属性是一个概念 行.记录.元组是一个概念 MySQL数据库CONSTRAINT约束:非空约束,唯一约束,主键约束,外键约束 show c ...
- Python攻城师————MySQL数据库(自增、外键、关键字)
今日学习目标 正式学习MySQL数据库语句. 文章目录 今日学习目标 学习内容 一.自增特性 二.约束条件之外键 外键的定义 外键约束创建 三.查询关键字 查询关键字之select与from 查询关键 ...
- mysql中表的约束,主键外键唯一键
mysql2 表的约束 空属性(NULL) 默认值 列描述 zerofill 主键 主键属性 复合主键 追加主键 删除主键 自增长 唯一键 外键 表的约束 空属性(NULL) 此时 name 的 Nu ...
最新文章
- 《企业大数据系统构建实战:技术、架构、实施与应用》——第3章 企业大数据解决方案 3.1 企业大数据解决方案实现方式...
- oracle中执行动态sql语句吗,oracle中有没有可动态执行sql语句的函数
- 献给新手的深度学习综述
- Mac+docker+flask
- 百度地图手绘线坐标获取
- php扫描蓝牙设备接口,微信硬件蓝牙扫描某个设备接口onScanWXDeviceResult
- SAP、IFS、Maximo三产品在EAM角度的比较Lenon系列
- 加装的硬盘进入后点不了文件夹_Mac OS Catalina 挂载NTFS硬盘的问题 (无需第三方软件,几行代码即可)...
- 演练:创建和使用静态库 (C++)
- React Native实现一个带筛选功能的搜房列表(2)
- 阿尔伯塔大学的计算机科学专业好吗,阿尔伯塔大学哪个专业好?三大热门方向成就高薪未来...
- 数据库恢复相关知识笔记
- Laravel配置自带组件实现各类型邮件发送功能的代码实例
- 按钮先调用页面JS,JS成功才调用后台代码
- 漏洞复现之(MS17-010)
- FFMPEG解码H264成YUV
- 网站分析行业的“前途”和“钱途” [转载]
- 单身公寓app开发,年轻人的租房首选
- 认识PCIe---硬件篇
- java pdf 图片替换_Java 添加、替换、删除PDF中的图片
热门文章
- 使用ArcGIS为tif影像生成tfw文件
- MPLS隧道——跨域解决方案A、B讲解
- AxureRP9 中继器的简单使用
- Linux内核wait,进程调度 – Linux内核API wait_for_completion
- 10天精读掌握:计算机组成与设计COAD:Patterson and Hennessy 第5天 2018/10.30
- 软件vmware获取ip地址失败
- html 多层画布,HTML画布——canvas
- 道路矢量下载 转shp格式
- div id与div class详解
- 【Sass中级】使用Sass和Compass制作雪碧图