关系数据库——基础

数据库系统概论

四个基本概念

数据:数据库中存储的基本对象,描述一个事物的符号记录,数据和其语义不可分开说

数据库(DB):是长期储存在计算机内、有组织的、可共享的大量数据的集合。

数据库管理系统:一个管理数据的软件

主要功能:

数据定义功能:

(1)提供数据定义语言(DDL):创建表(CREATE),修改表(ALTER),删除表(DROP);

(2)定义数据库中的数据对象

操纵功能:

提供数据操纵语言(DML,即增删改查的操作),实现对数据库的基本操作 (查询、插入、删除和修改)

事务管理和运行管理:

数据库由DBMS统一管理和控制保证数据的安全,完整性、多用户对数据的并发使用、发生故障后的系统恢复

建立和维护功能:(1)数据库初始数据装载转换;(2)数据库转储;(3)介质故障恢复;(4)数据库的重组织;(5)性能监视分析等

数据库系统:由数据库、数据库管理系统应用程序和数据库管理员(DBA)等组成的存储、管理、处理和维护数据的系统。

数据模型

两类数据模型

  1. 概念模型:第一次抽象,用于数据库设计

  2. 逻辑模型和物理模型:第二次抽象

    1)逻辑模型主要包括网状模型、层次模型、关系模型、面向对象模型等,按计算机系统的观点对数据建模,用于DBMS实现

    2)物理模型是对数据最底层的抽象,描述数据在系统内部的表示方式和存取方法,在磁盘或磁带上的存储方式和存取方法

数据模型的组成要素

  1. 数据结构

    1)描述数据库的组成对象,以及对象之间的联系

    2)描述与数据之间联系有关的对象

    3)是对系统静态特性的描述

    4)分类:(1)非关系型:网状,层次;(2)关系型;(3)面向对象型

  2. 数据操作

    1)对数据库中各种对象(型)的实例(值)允许执行的操作及有关的操作规则

    2)增删改查

    3)是对系统动态特性的描述

  3. 数据的完整性约束条件

    1)一组完整性规则的集合

    2)完整性规则:给定的数据模型中数据及其联系所具有的制约和储存规则

    3)用以限定符合数据模型的数据库状态以及状态的变化,以保证数据的正确、有效、相容

  4. 实体完整性:具体的数据的属性信息是否完整

    参照完整性:该属性对应的值存在

    用户定义完整性:看心情

关系模型

  1. 基本概念:

    1)关系(Relation):一个关系对应通常说的一张表

    2)元组(Tuple):表中的一行即为一个元组

    3)属性(Attribute):表中的一列即为一个属性,给每一个属性起一个名称即属性名

    4)码(Key) :唯一确定一个元组的属性或属性组

    5)域(Domain) :是一组具有相同数据类型的值的集合

    6)分量:元组中的一个属性值

    7)关系模式:对关系的描述,一般表示为

    ​ 关系名(属性1,属性2,……,属性n)

    学生(学号,姓名,年龄,性别,系,年级)

    8)注意规范:不能出现大表套小表。

  2. 数据操作:增删改查,对若干元组操作的集合

  3. 数据的完整性约束条件:

    1)实体完整性

    2)参照完整性

    3)用户定义完整性

数据库系统结构

数据库系统模式的概念

  1. 型:对某一类数据的结构和属性的说明,(学号,姓名,性别,系别,年龄,籍贯)
  2. 值:是型的一个具体赋值,(201315130,李明,男,计算机,19,江苏)
  3. 模式:数据库逻辑结构和特征的描述,是型的描述,反映的是数据的结构及其联系,模式是相对稳定的,即属性名的集合
  4. 实例:模式的一个具体值,反映数据库某一时刻的状态,同一个模式可以有很多实例,实例随数据库中的数据的更新而变动
  5. 如果是一个成绩单:那么科目那一行表示的是模式(不仅仅只是这些,还包括其他的信息),每一个人的成绩一行表示的是一个实例

数据库系统的三级模式结构

  1. 模式:数据库中全体数据的逻辑结构和特征的描述,所有用户的公共数据视图,综合了所有用户的需求,一个数据库只有一个模式,模式是相对稳定的,但是实体是相对变动的

    地位:1)是数据库系统模式结构的中间层;2)与数据的物理存储细节和硬件环境无关;3)与具体的应用程序、开发工具及高级程序设计语言无关

    定义:1)数据的逻辑结构(数据项的名字、类型、取值范围等);2)数据之间的联系;3)数据有关的安全性、完整性要求

  2. 外模式:模式的子集,一个数据库可以有多个,是数据库中局部数据的逻辑结构和特征的描述

  3. 内模式:1)是数据物理结构和存储方式的描述;2)是数据在数据库内部的表示方式

    一个数据库只有一个内模式。

数据库的二级映像功能与数据的独立性

  1. 外模式/模式映像:保证了数据的逻辑独立性。不唯一

    1)当模式改变时,数据库管理员修改有关的外模式/模式映象,使外模式保持不变

    2)应用程序是依据数据的外模式编写的,从而应用程序不必修改,保证了数据与程序的逻辑独立性,简称数据的逻辑独立性。

  2. 模式/内模式映像:保证了数据的物理独立性。唯一

    1)当数据库的存储结构改变了(例如选用了另一种存储结构),数据库管理员修改模式/内模式映象,使模式保持不变,进而外模式也不发生改变

    2)应用程序不受影响。保证了数据与程序的物理独立性,简称数据的物理独立性

  3. 数据的存取由DBMS管理的好处:

    1)用户不必考虑存取路径等细节

    2)简化了应用程序的编制

    3)大大减少了应用程序的维护和修改

 

数据库系统的组成

硬件,操作系统,数据库设计人员,数据库管理人员,数据库管理系统,用户等等。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/445130.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Python(27)-模块

模块、包1.模块导入的方式2.使用as给模块取一个别名(大驼峰命名法)3.从模块中导入部分工具4.从模块中导入全部工具5.模块搜索顺序6__name__7.包8.发布模块、安装模块、卸载包9.pip安装第三方模块本系列博文来自学习《Python基础视频教程》笔记整理&#…

Wow6432Node

64 位版本 Windows 中的注册表分为 32 位注册表项和 64 位注册表项。许多 32 位注册表项与其相应的 64 位注册表项同名,反之亦然。 64 位版本 Windows 包含的默认 64 位版本注册表编辑器 (Regedit.exe) 可显示 64 位和 32 位的 注册表项。WOW64 注册表重定向器为 32 位程序提供…

如何使用docker配置深度学习开发环境

文章目录1.底层驱动的安装1.1 操作系统的安装1.2 显卡驱动的安装1.3 cuda的安装2.使用docker配置深度学习开发环境2.1 docker的安装2.2 nvidia_docker的安装2.3 安装过程中的问题2.3.1 docker和nvidia_docker的版本不匹配的问题。2.3.2 解决每次运行docker命令的时候要加sudo.2…

反射全解

反射的概念 反射的引入: Object obj new Student(); 若程序运行时接收到外部传入的一个对象,该对象的编译类型是Object,但程序又需要调用该对象运行类型的方法: 1.若编译和运行类型都知道,使用 instanceof判断后&…

MachineLearning(4)-核函数与再生核希尔伯特空间

核函数与再生核希尔伯特空间1.支持向量积-核函数2.一个函数为核函数的条件3.核函数与希尔伯特空间3.1希尔伯特空间-Hilbert空间1.支持向量积-核函数 核(kernel)的概念由Aizenman et al.于1964年引入模式识别领域,原文介绍的是势函数的方法。在那之后,核…

CRegKey 注册表操作

1.简介 CRegKey提供了对系统注册表的操作方法,通过CRegKey类,可以方便的打开注册表的某个分支或子键(CRegKey::Open),可以方便的修改一个键的键值(CRegKey::SetValue),也可以查询某…

进程基础

进程的基本概念 程序顺序执行的特征: 1)顺序性:处理机严格按照程序所规定的顺序执行,每一步操作必须在下一步操作开始前执行 2)封闭性:程序在封闭的环境下运行,程序独占资源,资源的状…

用Docker容器自带的tensorflow serving部署模型对外服务

相信很多人和我一样,在试图安装tensorflow serving的时候,翻遍了网上的博客和官网文档,安装都是以失败而告终,我也是一样,这个问题折磨了我两个星期之久,都快放弃了。幸运的是在同事的建议下,我…

C资源

云风最近写了一篇博客《C语言的前世今生》。作为长期使用C语言开发网络游戏服务器的程序员,云风是有理由写这样一篇文字,不过还是感觉谈的不够深入,C语言在业界使用的现状没有怎么描写,有些意犹未尽。在这里想比较系统的谈谈个人对…

学点数学(2)-特征函数

特征函数1.数列特征方程2.矩阵特征方程3.微分方程特征方程4.积分方程特征方程特征方程是为研究相应的数学对象而引入的一些等式,这些等式描述了特定对象的特性。依据研究的对象不同,特征方程包括数列特征方程、矩阵特征方程、微分方程特征方程、积分方程…

GCC如何产生core dump

先决条件1.安装apport(automatically generate crash reports for debugging)2.修改/etc/security/limits.conf文件,使允许core dump,或者用ulimit -c unlimited设置core dump文件的大小为unlimited3.C/C的编译开关-g(…

经典的进程同步问题

经典的进程同步问题 普通版:一类进程作为生产者,生产产品,生产的产品放入一个缓冲区,消费者从缓冲区中取出产品,需要保证生产者不可以向满的缓冲区中添加产品,消费者不可以从空的缓冲区中取出产品。同一时刻…

面试题汇总---深度学习(图像识别,NLP内容)

文章目录1.基本概念1.1 为什么神经网络中深度网络的表现比广度网络表现好?1.2 推导BP算法1.3 什么是梯度消失和梯度爆炸?1.4 常用的激活函数有哪些?1.5 常用的参数更新方法有哪些?1.6 解决过拟合的方法?数据层面模型层…

Linux-2.6.25 TCPIP函数调用大致流程

Linux-2.6.25 TCPIP函数调用大致流程学习目的,随手笔记。函数和文字说明会不断补充更新。Changelog2008.10.08 最近找工作忙。暂时缓缓插口层系统调用sendsys_sendsys_sendtosendtosys_sendtosock_sendmsgsendmsgsys_sendmsgsock_sendmsgwritesys_writevfs_write…

Python(28)-文件,os模块

文件1. 文件2. 文件的基本操作3. 读取文件open()3.1 文件指针: 标记从哪一个位置开始读取数据.3.2 文件的打开方式mode3.3 文件按行读取3.3.1 readline()3.3.2 readlines()4.文件输出f.write(),print()5.文件复制5.1 小文件复制(搬家)5.2 大文件复制&…

IOCP的程序

C代码 #include <winsock2.h> #include <mswsock.h> #include <windows.h> #include <stdio.h> #include <stdlib.h> #include <assert.h> #include "vld.h" #pragma message("automatic link to ws2_32.lib and…

PaperNotes(3)-图像分割-RCNN-FCN-Boxsup

图像分割算法对比小结1.{基本概念}2.{R-CNN}2.1R-CNN 网络结构选择性搜索算法为什么选择SVM作分类器边框回归2.2{R-CNN 训练}2.3{R-CNN实验结果}2.4{R-CNN语义分割}2.5{补充材料}2.5.1{R-CNN建议区域放缩}2.5.2{IOU阈值设置不一样的原因}2.5.3{Bounding-box回归修正}2.6{R-CNN存…

Python模块(3)--PIL 简易使用教程

PIL模块-用与记1.图片导入Image.open()2.图像显示.show()4.查看图片属性.format,.size,.mode3.图像格式转换.convert()4.图像模式“L”&#xff0c;“RGB”,"CYMK"5. 图片旋转.rotate()旋转方式1&#xff1a;旋转不扩展旋转方式2&#xff1a;旋转扩展旋转方式3&#…

日志级别 debug info warn eirror fatal

日志级别 debug info warn eirror fatal 软件中总免不了要使用诸如 Log4net, Log4j, Tracer 等东东来写日志&#xff0c;不管用什么&#xff0c;这些东东大多是大同小异的&#xff0c;一般都提供了这样5个日志级别&#xff1a; Debug Info Warn Error Fatal一个等级比一个高&…

输入输出系统

I/O设备&#xff1a;输入输出和存储功能的设备 I/O设备的分类 按传输的速度&#xff1a; 低速设备&#xff08;如键盘、鼠标、语音输入输出设备&#xff09; 中速设备&#xff08;如行式打印机、激光打印机等&#xff09; 高速设备&#xff08;如磁带机、磁盘机、光盘机等&…