数据库(一)初步认识数据库系统

什么是数据库?

表:以按行按列形式组织及展现的数据

如下便是一个表,也叫关系,描述了一批相互有关联关系的数据

数据库:起源于规范化表(如成绩单)的处理,简称DB,是相互有关联关系的若干表的集合。简单说就是一堆文件,这些文件中存储了具有特定格式的数据

什么是数据库管理系统? 

作用:专门管理数据库中的数据的,数据库管理系统可以对数据库当中的数据进行增删改查。

类型:层次型、网状型、关系型(本课程主要学习)。

常见的数据库管理系统:MySQL,Oracle、MS SqlServer、DB2、sybase等.....

用户角度看数据库管理系统

一.数据库定义:定义数据库中表的名称标题等

1.DBMS提供数据定义语言即DDL

2.用户使用DDL描述其所要建立表的格式

3.DBMS依照用户的定义,创建数据库及其中的表

二.数据库操纵:向数据库的表进行增删查改等操作

1.DBMS提供数据操纵语言(DML)

2.用户使用DML描述其索要进行的增删改查等操作

3.DBMS根据用户的操作描述,实际执行这些操作

三.数据库控制:控制数据库中数据使用的权限

1.DBMS提供数据控制语言(DCL),即对数据访问权限的控制

2.用户使用DCL描述其对数据库所要实施的控制,即用户对数据的访问权限

3.DBMS依照用户的描述进行权限的检查,实际进行控制

四.数据库维护:转储,恢复,重组等,一般由数据库管理员使用和掌握

1.DBMS提供一系列程序

2.这些程序提供对数据库维护的各种功能

3.用户使用这些程序进行对各种数据库维护操作

数据库语言

使用者通过数据库语言利用DBMS操作数据库

1.数据定义语言(DDL):用于用户定义数据格式,如定义表明,表标题,列名及其结构形式

2.数据操纵语言(DML):用于用户对数据进行操作,如增删查改检索统计数据

3.数据控制语言(DCL):用于用户对数据进行控制,如定义对不同用户的权限

以上三种语言统称为SQL语言 ,即结构化数据语言

DBMS按照用户使用的SQL语言进行定义,操纵,控制和维护

SQL语言相当于高级语言的一个或多个循环程序,用于在数据库中遍历数据进行对特定数据的操

纵,也可以嵌入在高级语言中使用

系统角度看数据库管理系统

这些程序有以下几种:

语言编译器:将用数据库语言书写的内容,翻译成DBMS可执行的命令。例如: DDL编译器,DML编

译器,DCL编译器等;

查询优化(执行引擎)与查询实现(基本命令的不同执行算法) :提高数据库检索速度的手段;例如贯穿

于数据存取各个阶段的优化程序;

数据存取与索引:提供数据在磁盘、磁带等上的高效存取手段。例如:存储管理器,缓冲区管理器,索

引/文件和记录管理器等;

通信控制:提供网络环境下数据库操作与数据传输的手段

事务管理:提供提高可靠性并避免并发操作错误的手段

故障恢复:使数据库自动恢复到故障发生前正确状态的手段,例如提供了备份、运行日志操控等实用

程序

安全性控制:提供合法性检验,避免非授权非法用户访问数据库的手段

完整性控制:提供数据及数据操作正确性检查的手段

数据字典管理:管理用户已经定义的信息

应用程序接口(API) :提供应用程序使用DBMS特定功能的手段

数据库数据装载、重组等实用程序

数据库性能分析:统计在运行过程中数据库的各种性能数据,便于优化运行

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

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

相关文章

【计算机视觉】图像处理算法(形态学滤波篇)

来源:《OpenCV3编程入门》,怀念毛星云大佬🕯️ 说明:本系列重点关注各种图像处理算法的原理、作用和对比 形态学滤波(1 ):腐蚀与膨胀 形态学槪述 数学形态学的概念: 数学形态学(Mathematical morphology)是立在格论…

《深度学习风暴:掀起智能革命的浪潮》

在当今信息时代,深度学习已经成为科技领域的一股强大力量,其应用领域涵盖了从医疗到金融再到智能交互等方方面面。随着技术的不断进步和应用的不断拓展,深度学习的发展势头愈发迅猛,掀起了一股智能革命的浪潮。本文将从基本原理、应用实例、挑战与未来发展方向、与机器学习…

CSS3基础2

CSS3 用户界面 resize 示例 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><title>Document</title>…

关于 JVM

1、请你谈谈你对JVM的理解&#xff1f; JVM由JVM运行时数据区&#xff08;图示中蓝色框包含部分&#xff09;、执行引擎、本地库接口、本地方法库组成。 JVM运行时数据区&#xff0c;分为方法区、堆、虚拟机栈、本地方法栈和程序计数器。 1.方法区 Java 虚拟机规范中定…

在web中应用mybatis

搭建环境 数据库表的设计 create table bank(id bigint auto_increment primary key ,actno varchar(255) comment "账号",balance decimal(15,2) comment "余额" ); insert into bank values(1,act001,50000); insert into bank values(2,act002,0);添加…

期刊《International Journal of Information Security》

International Journal of Information Security 官网截图 出版选项 自由选择OA或者订阅 Aims and scope 投稿方向 Latest issue Volume 82 In progress (May 2024) This issue is in progress but contains articles that are final and fully citable. 有一篇: Vol…

数据分析-Pandas数据y轴双坐标设置

数据分析-Pandas数据y轴双坐标设置 数据分析和处理中&#xff0c;难免会遇到各种数据&#xff0c;那么数据呈现怎样的规律呢&#xff1f;不管金融数据&#xff0c;风控数据&#xff0c;营销数据等等&#xff0c;莫不如此。如何通过图示展示数据的规律&#xff1f; 数据表&…

YOLOv8旋转目标检测实战:训练自己的数据集

课程链接&#xff1a;https://edu.csdn.net/course/detail/39393 旋转目标检测是计算机视觉领域的一个高级任务&#xff0c;它在传统目标检测的基础上进一步发展。传统目标检测技术主要关注于识别和定位图像中的物体&#xff0c;通常以水平边界框(HBB)来标识目标物体的位置。而…

深入浅出计算机网络 day.1 概论① 信息时代的计算机网络

我想&#xff0c; 我不会暗下来的&#xff0c; 生命是周而复始的橙黄橘绿时 —— 24.3.9 内容概述 计算机网络的各类应用 计算机网络带来的负面问题 我国互联网发展情况 一、计算机网络的各类应用 1.信息浏览和发布 2.通信和交流 3.休闲和娱乐 4.资源共享…

文件包含漏洞初识

一、基础知识介绍 在web后台开发的时候&#xff0c;我们会使用PHP&#xff0c;Java这种代码&#xff0c;而在使用的过程中&#xff0c;我们经常会使用包含函数&#xff08;也就是调用&#xff09;&#xff0c;而很多时候&#xff0c;前端用户在选择浏览时会调用包含的文件这无…

流浪动物救助小程序|基于微信小程序的流浪动物救助系统设计与实现(源码+数据库+文档)

流浪动物救助小程序目录 目录 基于微信小程序的流浪动物救助系统设计与实现 一、前言 二、系统设计 三、系统功能设计 1、用户信息管理 2、寻宠信息管理 3、动物求助管理 4、论坛信息管理 四、数据库设计 五、核心代码 六、论文参考 七、最新计算机毕设选题推荐…

算法详解——leetcode150(逆波兰表达式)

欢迎来看博主的算法讲解 博主ID&#xff1a;代码小豪 文章目录 逆波兰表达式逆波兰表达式的作用代码将中缀表达式转换成后缀表达式文末代码 逆波兰表达式 先来看看leetcode当中的原题 大多数人初见逆波兰表达式的时候大都一脸懵逼&#xff0c;因为与平时常见的表达式不同&am…

el-table 插入输入框并进行校验

<template><div><el-form :model"list" ref"ruleForm"><el-table :data"list.tableData" style"width: 100%"><el-table-column prop"time" label"日期" width"180"><…

一周学会Django5 Python Web开发-Django5内置模板引擎-模板标签

锋哥原创的Python Web开发 Django5视频教程&#xff1a; 2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~_哔哩哔哩_bilibili2024版 Django5 Python web开发 视频教程(无废话版) 玩命更新中~共计33条视频&#xff0c;包括&#xff1a;2024版 Django5 Python we…

HCIA-HarmonyOS设备开发认证V2.0-习题2

目录 习题一习题二坚持就有收获 习题一 # 判断题## 1.PWM占空比指的是低电平时间占周期时间的百分比。(错误)正确(True)错误(False)解题&#xff1a; - PWM占空比指的是高电平时间占周期时间的百分比## 2.UART是通用异步收发传输器&#xff0c;是通用串行数据总线&#xff0c;…

ROS2学习(七) Foxy版本ros2替换中间件。

在ros2使用的过程中&#xff0c;一开始选用的foxy版本&#xff0c;后来发现&#xff0c;foxy版本的ros2有很多问题。一个是foxy版本已经停止维护了。另一个问题是这个版本有很多bug, 后续的版本在功能实现上做了很大的改动&#xff0c;甚至说进行了重写。修复的一些问题&#x…

四、软考-系统架构设计师笔记-信息系统基础知识

1、信息系统概述 信息系统的定义 信息系统是由计算机硬件、网络和通信设备、计算机软件、信息资源、信息用户和规章制度组成的以处理信息流为目的的人机一体化系统。 信息系统任务是对原始数据进行收集、加工、存储&#xff0c;并处理产生各种所需信息&#xff0c;以不同的方式…

修改Android打包apk的名字和目录

app打包生成apk后通常需要进行备份&#xff0c;但是要区分好哪个apk是什么版本的、什么时候打包的&#xff0c;以方便以后区分使用。 最开始的想法是把版本号、创建时间这些加在apk文件名上即可&#xff0c;但是公司要求apk使用一个固定的名称&#xff0c;那我怎么保存版本号信…

Ubuntu平铺左、右、上、下、1/2、1/4窗口(脚本)

前言 之前因为一直在用Ubuntu 18或者Ubuntu 20然后发现装了GNOME插件后&#xff0c;电脑在使用过程中&#xff0c;会时不时的卡死&#xff08;鼠标没问题&#xff0c;键盘输入会有10-20秒的延迟&#xff09;频率基本是一小时一次&#xff0c;因为这种卡顿会很容易打断思路&…

Jenkins 部署 RuoYi

目录 1、项目介绍 2、部署若依 clone 源代码 导入数据库到 node-16 修改 RuoYi 配置文件 推送 RuoYi 项目至 Gitlab 3、配置 Jenkins 配置本地 Maven Jenkins 配置 Maven 新建 Maven 项目 编写构建后的脚本 Jenkins 构建后执行脚本 4、Jenkins 传递参数 设置项目部…