目录

一、关系模型与数据表

二、MySQL数据类型

三、数据完整性约束

四、参照完整性约束


一、关系模型与数据表

  1. 概念

①关系模型:是由若干个关系模式组成的集合,关系模式的实例称为关系,每个关系实际上是一张二维表格

②关系数据库:是以关系模型为基础的数据库,是一种根据表、元组(记录)以及字段(列)之间的关系进行组织和访问数据的数据库,其通过若干个表来存取数据,并且通过关系将这些表联系在一起

③关系模型中的术语:

  • 关系(Relation):对应通常所说的一张表,如订单表。
  • 元组(Tuple):表中的一行即为一个元组,它可以标识实体集中的一个实体,元组亦可称作“记录(Record)”。表中任意两行(元组)不能相同。
  • 属性(Attribute):表中的一列即为一个属性,给每个属性起一个名称即属性名,属性亦可称作列(Column),表中的属性名(列名)不能相同,每个属性都有值。
  • 主键(Key):表中的某个属性组,它可以唯一确定一个元组,属性组可以有一个或多个属性。
  • 关系模式:对关系的描述,可表示为关系名。

二、MySQL数据类型

  1. 常见类型

类型分类

类型

取值范围或描述

示例

整数类型

tinyint

0 ~255

员工年龄:32

smallint

-32768~32767

员工数:2540

int

-2147483648~2147483647

中国人口数:1354040000

小数类型

decimal

decimal(5,2)表示小数的取值范围是-999.99~999.99

商品单价:892.35

定长字符串类型

char

char(10) 表示字符串存储 10 个字符,即便该字符串只有一个字符, 它所占用的存储空间也是 10 个字符空间大小

公司名:HUAWEI

变长字符串类型

varchar

varchar(10) 表示字符串最多存储10 个字符,如果该字符串仅包含一个字“中”,那么它所占用的存储空间也只是一个字符空间大小。定义 varchar 类型可节省存储空间

公司地址:武汉洪山区珞瑜路 546 路光谷科技会展中心

日期类型

date

格式:YYYY-MM-DD(年 - 月- 日)取值范围:1000-01-01 ~ 9999-12-31

出生日期:1982-03-24

日期类型

time

格式:HH:MM:SS(时 : 分钟 : 秒)取值范围:-838:59:59 ~ 838:59:59

注意:时间不限当天

早晨上班时间:08:30:00

datetime

格式:YYYY-MM-DD HH:MM:SS

取 值 范 围:1000-01-01 00:00:00 ~ 9999-12-31 23:59:59

登 机 时 间:2015-05-1214:35:0

三、数据完整性约束

1、数据完整性:为了防止不符合规范的数据进入数据库,在用户对数据进行插入、修改以及删除等操作时,DBMS 自动按照一定的约束条件对数据进行监测,使不符合规范的数据不能进入数据库,以确保数据库中存储的数据正确、有效、相容

2、作用:保证数据库中的数据在逻辑上的一致性、正确性和可靠性

3、数据完整性:

(1)实体完整性:规定表的每一行记录在表中是唯一的

1)主键约束:非空,唯一,递增

2)唯一约束:唯一,可以为空

(2)域完整性

1)非空约束:不能有空值

2)默认值约束:给指定列设置默认的数据,也可以更改

(3)参照完整性

四、参照完整性约束

最新文章

  1. 基于注解的bean配置
  2. Spring常用注解,自动扫描装配Bean
  3. gradle大体内容
  4. 10、会话管理/编程实战分析/Jsp
  5. Redo日志
  6. Linux Weblogic 数据源 TimesTen配置
  7. php常用mysql函数
  8. iOS 面试题:OC标题的基本概念<延续>
  9. WebRTC系列(1)-手把手教你实现一个浏览器拍照室Demo
  10. odoo Model字段的参数
  11. redis安装,windows,linux版本并部署服务
  12. 深度学习原理与框架-Tfrecord数据集的制作 1.tf.train.Examples(数据转换为二进制) 3.tf.image.encode_jpeg(解码图片加码成jpeg) 4.tf.train.Coordinator(构建多线程通道) 5.threading.Thread(建立单线程) 6.tf.python_io.TFR(TFR读入器)
  13. Linux 学习手记(1):命令行BASH的基本操作
  14. 【Socket】linux网络扫描程序开发
  15. scala编程第19章学习笔记(1)——类型参数化
  16. PHP的内存泄露问题与垃圾回收
  17. 尽量不要使用using namespace std
  18. TensorFlow支持GPU配置问题
  19. [javaEE] javaweb的mvc设计思想
  20. Maven面试宝典

热门文章

  1. display:inline-block,block,inline元素的区别
  2. Linux:sqlplus
  3. React 传值 组件传值 之间的关系
  4. FastJson简介
  5. eclips 配置一个tomcat,启动多个不同端口的web项目
  6. Python——连接数据库操作
  7. docker容器使用loki收集日志
  8. 4、Redis基础
  9. centos配置 显示中文
  10. Offset函数(Excel函数集团)