数据库原理-1

数据库理论


信息时代面对大量的信息和数据,如何有效的对数据进行收集、组织、储存、加工、传播、管理和使用,是数据管理必需解决的问题。
数据库就算一种数据管理技术,可以帮助我们科学的组织和储存数据、高效的获取和处理数据,更广泛、更安全的共享数据。
数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS。大部分DBMS提供数据定义语言DDL(Data Definition Language)和数据操作语言DML(Data Manipulation Language),供用户定义数据库的模式结构与权限约束,实现对数据的追加、删除等操作。
数据库模式定义语言DDL(Data Definition Language),是用于描述数据库中要存储的现实世界实体的语言。

一、数据库体系结构

1.三种模式

  • 外模式
    • 反映了数据库的用户观。使用户看到的数据库的数据视图,是与某一应用有关的数据的逻辑表示,是从模式导出的一个子集,包含模式中允许特定用户使用的那部分数据。一个数据库可以有多个外模式。
  • 模式
    • 反映了数据库系统的整体观。是对数据库中全部数据的逻辑结构和特征的总体描述,是所有用户的全局视图。由DBMS提供的数据模式请以语言DDL描述和定义。(数据库设计的时候的字段名称类型等)
  • 内模式
    • 反映了数据库的存储观。是数据库中全体数据的底层描述,描述了数据在存储方式和物理结构,对应着实际存储在外存上的数据库。

2.两种映射

  • 外模式-模式映射

    • 外模式有多个,每个外模式都有一个外模式-模式映射,它定义外模式与模式之间的对应关系。当模式改变的时候,DBA对各个外模式-模式映射进行相应的修改,可以使外模式保持不变。应用程序是依据模式的外模式编写的,从而使应用程序不必修改,保证了数据与程序的逻辑独立性。
  • 模式-内模式映射

    • 内模式只有唯一的一个。它定义了数据库的全局逻辑结构和存储结构之间的对应关系。当数据库的存储结构改变时,DBA对外模式-内模式映射做相应修改,可以使模式保持不变,从而应用程序也不必修改,保证了数据与程序的物理物理性。

3.三种模型

  • 概念模型
    • 按照用户的观点对现实世界的事务及其联系进行表示。‘实体—联系’ E-R模型 (矩形椭圆菱形)
  • 逻辑模型
    • 在概念模型基础上,按照计算机系统的观点对数据建模,用户机器世界对客观事物及其联系的数据描述,与具体的DBMS有关。常用的逻辑模型有层次模型,网状模型,关系模型和面向对象模型四种。
  • 物理模型
    • 反应数据存储结构的数据模型。物理数据模型不但与DBMS有关,而且还与操作系统和硬件有关。

2019年10月30日22:03:18

DBMS

  • 网状
  • 层次
  • 关系 * (表)
    • 数据结构简单
    • 关系规范化
    • 概念简单,操作反驳
  • 面向对象**
    • 对象(可扩展)类 实体 等

关系模型的概念

  • 表 :行和列构成,一种关系表示为一张表

  • 字段:表格的列表示实体的某个属性,成为字段

  • 记录:表格的一行包含多个字段,也成为了元组

  • 表:若干记录的集合,是若干数据项构成的,就是关系。

  • 域(Domain):属性的取值范围

  • 关键字(Candidate Key):凡是在表中能唯一确定不同记录的字段或字段组合,成为(候选)关键字。

  • 主关键字(Primary Key):一个表只能有一个,不能为空。

  • 外部关键字(外键)(Foreign Key)一个表可以有一个或者多个外键,外键的值对应其他表的主键的值,是连接不同表的公共属性。

  • 关系模型与关系的区别

    • 关系模式表示表的格式,是关系的数据结构及语义限制,一般相对稳定且不随时间改变;
    • 关系是在某一时刻关系模式的‘当前值’,是动态变化的。
数据的完整性
–是指数据库中数据的一致性与正确性。
  • 实体完整性
    • 对主键进行约束以保证关系中实体的唯一性。如学号是PK的话,不能空 ,不能重复
  • 参照完整性
    • 外键必须是被参照关系中主键的有效值。如学生的学号,课程信息的课程代码,选课信息的学号和代码
  • 用户定义完整性
    • 用户根据具体应用环境提出的完整性约束条件。如成绩不能为负,学号必须多少位

运算

    • 关系R与关系S的交由既属于R又属于S的元组组成,即R与S中相同的元组,组成一个新关系,其结果仍为n目关系。记作:R∩S={t|t∈R ∧ t∈S}
    • SELECT * FROM A a JOIN B b ON a.id=b.id
    • 关系R和关系S的并由属于R或属于S的元组组成,即R和S的所有元组合并,删去重复元组,组成一个新关系,其结果仍为n目关系(“n目”指关系模式中属性的数目为n) 。记作:R∪S={t|t∈R∨t∈S}
    • UNION 内部的每个 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每个 SELECT 语句中的列的顺序必须相同。
    •   SELECT column_name(s) FROM table1
        UNION
        SELECT column_name(s) FROM table2;
      
    • 默认地,UNION 操作符选取不同的值。如果允许重复的值,请使用 UNION ALL。
  • 笛卡尔积
  • 连接
  • 选择
  • 投影
  • 2019年10月31日23:37:20
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ava实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),可运行高分资源 Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现的毕业设计&&课程设计(包含运行文档+数据库+前后端代码),Java实现

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值