MOOC 数据库系统笔记(一):初步认识数据库系统
概述
什么是数据库
数据库是电子化信息的集合
数据库起源于规范化“表(Table)”的处理。
Table:以按行按列形式组织及展现的数据。
E.F.Codd,基于对“表(Table)”的理解:
1.提出了“关系”及关系模型。
2.提出了关系数据库理论
3.开创了数据库的时代
4.当前普遍应用的数据库管理系统的奠基者
5.获得图灵奖
表的构成和表的常见术语。
1.表名
2.表标题(格式)
表名加表标题合在一起称为(关系)模式
3.表内容(值)
表名加表标题加表内容合在一起称为(表/关系)
4.表的一行称为:行/元组/记录(row/tuple/record)
5.表的一列称为:列/字段/属性/数据项(column/field/attribute/data item)
数据库即为相互有关联的若干Table的集合
由表构成的数据库称为关系数据库(结构化数据库),除了关系数据库还有图像数据库,工程数据库等等(非结构化数据库)。。
什么是数据库系统
数据库系统的构成
1.数据库(DB):Database
2.数据库管理系统(DBMS):Database Management System
3.数据库应用(DBAP):DataBase Application
4.数据库管理员(DBA):DataBase Administraor
5.计算机基本系统
什么是数据库管理系统
用户:数据库管理系统应具有什么功能?
数据库定义功能
定义数据库中Table的名称、标题(内含的属性名称及对该属性的值的要求)等
1.DBMS提供一套数据定义语言(DDL:Data Definition Language)给用户
2.用户使用DDL描述其所要建立的表的格式
3.DBMS依照用户的定义,创建数据库及其中的Table
数据库操纵
向数据库的Table中增加/删除/更新数据及对数据进行查询、检索、统计等操作
1.DBMS提供一套数据库操纵语言(DML:Data Maniputation Language)给用户
2.用户使用DML描述其所要进行的增、删、改、查等操作
3.DBMS依照用户的操作描述,实际执行这些操作
数据库控制
控制数据库中数据的使用---哪些用户可以使用,哪些不可以
1.DBMS提供一套数据库操纵语言(DCL:Data Control Language)给用户
2.用户使用DCL描述其对数据库所要实施的控制
3.DBMS依照用户的操作描述,实际执行这些操作
数据库维护
转储/恢复/重组/性能监测/分析。。。
数据库维护的实时程序,一般都是由数据库管理员(DBA)来使用和掌握的
数据库语言
使用者通过数据库语言利用DBMS操作数据库
DDL,DML,DCL
具体如上。
这些语言统称为SQL语言:结构化的数据库语言
数据库语言与高级语言:
一条数据库语言相当于高级语言的一个或多个循环程序:
数据库语言(标准的:SQL语言)
Select 学号,姓名From 学生登记表 Where 性别='男';
相当于高级语言中的:
For K=1 to 最后一条记录
读第K条语句
if性别=男
输出
Endif
Next K
数据库语言可以嵌入到高级语言(宿主语言)中使用。
系统:数据库管理系统应具有什么功能?
解析语言并执行的系统-数据库管理系统。
1.编译与执行控制
2.查询优化实现
3.存储于索引
4.事务处理
5.其他(各种)控制程序
DBMS为完成DB管理实际上在后台运行着一系列程序。
1.语言编译器:将用数据库语言书写的内容,翻译成DBMS可以执行的命令。
例如:DDL编译器,DML编译器,DCL编译器;
2.查询优化(执行引擎)与查询实现(基于命令的不同执行算法):提高数据库检索速度的手段;例如贯穿于数据存取各个阶段的优化程序。
3.数据存取与索引:提供数据在磁盘、磁带上的高效存取手段。例如:存储管理器,缓冲区管理器,索引/文件和记录管理器等;
4.通信控制:提供网络环境下数据库操作与数据传输的手段。
还有事务管理、故障恢复、安全性控制、完整性控制等等。。
典型的数据库管理系统(DBMS)
Oracle
DB 2(IBM)
Sybase
MS SQL Server
MS Access
MS Foxpro
.......
MOOC 数据库系统笔记(一):初步认识数据库系统的更多相关文章
- MOOC JAVA笔记
MOOC JAVA笔记 1.基础了解 JDK是开发人员安装的,它提供了开发java程序的必须工具 JRE是普通用户安装的,它提供了java的运行环境 JVM是java虚拟机运行程序的核心 2.程序的移 ...
- MOOC 数据库系统笔记(二):数据库系统的基本结构及其演变发展
数据库系统的结构抽象与演变 数据库的标准结构 DBMS管理数据的三个层次 1.External Level = User Level 某一用户能够看到与处理的数据,全局数据中的某一部分 2.Conce ...
- 第3次作业-MOOC学习笔记:Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 4.提供图片或网站显示的学习进 ...
- MOOC 数据库笔记(三):关系模型之基本概念
关系模型的基本概念 关系模型简述 1.最早由E.F.Codd在1970年提出. 2.是从表(Table)及表的处理方式中抽象出来的,是在对传统表及其操作进行数学化严格定义的基础上,引入集合理论与逻辑学 ...
- 第三次作业-MOOC学习笔记:Python网络爬虫与信息提取
1.注册中国大学MOOC 2.选择北京理工大学嵩天老师的<Python网络爬虫与信息提取>MOOC课程 3.学习完成第0周至第4周的课程内容,并完成各周作业 第一周 Requests库的爬 ...
- Android_Mars学习笔记_S01_001activity初步
一.activity初步 1.程序启动会先读配置文件AndroidManifest.xml找activity 2.activity会在onCreate方法中读取activity_main.xml文件, ...
- MOOC C#笔记(一):数据类型
C#笔记 基础知识 一个C#程序主要包括以下部分: 命名空间声明(Namespace declaration) 一个 class Class 方法 Class 属性 一个 Main 方法 语句(Sta ...
- 0034 Java学习笔记-反射-初步2-操作对象
通过反射创建对象 通过反射创建对象有两种方式,一种通过Class对象的newInstance()方法,一种是获取到Class对象的Constructor后,再调用newInstance()方法,前者要 ...
- 0033 Java学习笔记-反射-初步1
先看看通过反射能干嘛 示例:修改对象的private实例变量 package testpack; import java.lang.reflect.Field; public class Test1 ...
随机推荐
- CSS动效集锦,视觉魔法的碰撞与融合(一)
前言 在本文中我讲述了7种CSS的动效,它们也许看起来并不惊艳,但是我认为却足够传达本文的理念:编写一些特殊的CSS样式的时候需要不拘于常理,要用特殊的认识角度看待标签和样式属性,从而用「绕个弯」的方 ...
- FILEBEAT+ELK日志收集平台搭建流程
filebeat+elk日志收集平台搭建流程 1. 整体简介: 模式:单机 平台:Linux - centos - 7 ELK:elasticsearch.logstash.kiban ...
- java高并发系列 - 第31天:获取线程执行结果,这6种方法你都知道?
这是java高并发系列第31篇. 环境:jdk1.8. java高并发系列已经学了不少东西了,本篇文章,我们用前面学的知识来实现一个需求: 在一个线程中需要获取其他线程的执行结果,能想到几种方式?各有 ...
- 从技术小白到收获BAT研发offer,分享我的学习经验和感悟(赠送相关学习资料)
去年秋季参加了校园招聘,有幸拿到了BAT.头条.网易.滴滴.亚马逊.华为等offer,经过研究生两年的学习积累,终于达成了自己的目标,期间也经历了很多,谨以此文,聊表感叹,也会分享很多我的Java学习 ...
- Leetcode之深度优先搜索(DFS)专题-199. 二叉树的右视图(Binary Tree Right Side View)
Leetcode之深度优先搜索(DFS)专题-199. 二叉树的右视图(Binary Tree Right Side View) 深度优先搜索的解题详细介绍,点击 给定一棵二叉树,想象自己站在它的右侧 ...
- k近邻法的实现
k近邻法 模型 使用的模型实际上对应于特征空间的划分.模型的三个基本要素:1.距离度量 2. k值的选择 3. 分类决策规则决定. k值的选择:k值的选择,k如果选择的过小会导致过拟合,模型会变得复杂 ...
- Codeforces 374 C Inna and Dima (DFS)
Inna and Dima 题意:从图上的任意一个D点按着DIMADIMA的顺序走,问一共可以经过多少个DIMA,如果经过0个DIMA就输出“Pool DIma!“,如果可以有无数多个DIMA就输出” ...
- 牛客小白月赛4 H 相邻的糖果 思维
链接:https://www.nowcoder.com/acm/contest/134/H来源:牛客网 题目描述 有n个盒子摆成一排,每个盒子内都有ai个糖果. 现在你可以执行以下操作: ·你可以选择 ...
- B. Tea Queue codeforces Round.37.div2 队列
B. Tea Queue time limit per test 1 second memory limit per test 256 megabytes input standard input o ...
- CSS3 03. 3D变换、坐标系、透视perspective、transformZ、transform-style添加3D效果、backface-visibility元素背面可见、动画animation、@keyfarmes、多列布局
1.左手坐标系 伸出左手,让拇指和食指成“L”形,大拇指向右,食指向上,中指指向前方.这样我们就建立了一个左手坐标系,拇指.食指和中指分别代表X.Y.Z轴的正方向.如下图 CSS中的3D坐标系 CSS ...