【数据库】数据库基本概念和类型

article/2025/8/26 20:53:55

一、数据库基本概念

1、数据
        所谓数据(Data)是指对客观事物进行描述并可以鉴别的符号,这些符号是可识别的、抽象的。它不仅仅指狭义上的数字,而是有多种表现形式:字母、文字、文本、图形、音频、视频等。现在计算机存储和处理的数据范围十分广泛,而描述这些数据的符号也变得越来越复杂了。

2、数据库
        数据库(Database,DB)指的是以一定格式存放、能够实现多个用户共享、与应用程序彼此独立的数据集合

3、数据库管理系统
        数据库管理系统(Database Management System,DBMS)是用来定义和管理数据的软件。如何科学的组织和存储数据,如何高效的获取和维护数据,如何保证数据的安全性和完整性,这些都需要靠数据库管理系统完成。目前,比较流行的数据库管理系统有:Oracle、MySQL、SQL Server、DB2等。

4、数据库应用程序
        数据库应用程序(Database Application System,DBAS)是在数据库管理系统基础上,使用数据库管理系统的语法,开发的直接面对最终用户的应用程序,如学生管理系统、人事管理系统、图书管理系统等。

5、数据库管理员
        数据库管理员(Database Administrator,DBA)是指对数据库管理系统进行操作的人员,其主要负责数据库的运营和维护。


6、最终用户
        最终用户(User)指的是数据库应用程序的使用者。用户面向的是数据库应用程序(通过应用程序操作数据),并不会直接与数据库打交道。

7、数据库系统
        数据库系统(Database System,DBS)一般是由数据库、数据库管理系统、数据库应用程序、数据库管理员和最终用户构成。其中DBMS是数据库系统的基础和核心。

二、数据库类型

        数据库经过几十年的发展,出现了多种类型。根据数据的组织结构不同,主要分为网状数据库层次数据库关系型数据库非关系型数据库四种。目前最常见的数据库模型主要是:关系型数据库和非关系型数据库。

1、关系型数据库
        关系型数据库模型是将复杂的数据结构用较为简单的二元关系(二维表)来表示,如图1-4所示。在该类型数据库中,对数据的操作基本上都建立在一个或多个表格上,我们可以采用结构化查询语言(SQL对数据库进行操作。关系型数据库是目前主流的数据库技术,其中具有代表性的数据库管理系统有:Oracle、DB2、SQL Server、MySQL等。


 

PS:关系=二维表

 
2、非关系型数据库(NOSQL)
        NOSQL(Not Only SQL)泛指非关系型数据库。关系型数据库在超大规模和高并发的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题。NOSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。常见的非关系型数据库管理系统有Memcached、MongoDB,redis,HBase等。 

三、常见的关系型数据库

        虽然非关系型数据库的优点很多,但是由于其并不提供SQL支持学习和使用成本较高并且无事务处理,所以关系型数据库的学习乃是重中之重。下面将介绍一下常用的关系型数据库管理系统。
1、 Oracle
        Oracle数据库是由美国的甲骨文(Oracle)公司开发的世界上第一款支持SQL语言的关系型数据库。经过多年的完善与发展,Oracle数据库已经成为世界上最流行的数据库,也是甲骨文公司的核心产品。
        Oracle数据库具有很好的开放性,能在所有的主流平台上运行,并且性能高、安全性高、风险低;但是其对硬件的要求很高、管理维护和操作比较复杂而且价格昂贵,所以一般用在满足对银行、金融、保险等行业大型数据库的需求上。
2、DB2
        DB2是IBM公司著名的关系型数据库产品。DB2无论稳定性,安全性,恢复性等等都无可挑剔,而且从小规模到大规模的应用都可以使用,但是用起来非常繁琐,比较适合大型的分布式应用系统
3、SQL Server
        SQL Server是由Microsoft开发和推广的关系型数据库,SQL Server的功能比较全面、效率高,可以作为中型企业或单位的数据库平台。SQL Server可以与Windows操作系统紧密继承,无论是应用程序开发速度还是系统事务处理运行速度,都能得到大幅度提升。但是,SQL Server只能在Windows系统下运行,毫无开放性可言
4、MySQL
        MySQL是一种开放源代码轻量级关系型数据库,MySQL数据库使用最常用的结构化查询语言(SQL)对数据库进行管理。由于MySQL是开放源代码的,因此任何人都可以在General Public License的许可下下载并根据个人需要对其缺陷进行修改。
        由于MySQL数据库体积小、速度快、成本低、开放源码等优点,现已被广泛应用于互联网上的中小型网站中,并且大型网站也开始使用MySQL数据库,如网易、新浪等。  


http://chatgpt.dhexx.cn/article/CvF5y2mE.shtml

相关文章

Linux下ll命令

ll命令其实就是ls -l,当然如果想显示隐藏信息就是 ls -al。 我个人是特别喜欢ll代替ls -al命令,并且还要有颜色的那种。 今天卸载软件重新安装环境变量怎么都不对了,一生气把环境变量都清空了。命令:unset PATH 然后就手动添加…

【Linux】ll命令报错-bash: ll: command not found

报错信息 : -bash: ll: command not found root用户没有显示 普通用户下,即目录的拥有者,可以使用ll命令 报错原因: root用户在当前目录没权限,或者, ll 并不是Linux 下一个基本的命令,它实际上…

语法分析:LL(1)分析

本篇介绍的LL(1)分析,这是一种自上而下分析的方法,第一个 L 表示从左向右扫描, 第二个 L 表示分析过程是最左推导,(1)表示每次只向前看一个符号进行分析 关于语法描述的概念 本文中,若无特别说明,小写字母[…

Linux命令 ls 和 ll 的使用方法与基本区别

Linux命令 ls 和 ll 的使用方法与基本区别 Linux 命令 ls 和 ll 的使用方法: ll:罗列出当前文件或目录的详细信息,含有时间、读写权限、大小、时间等信息 ,像Windows显示的详细信息。ll是“ls -l"的别名。相当于Windows里的…

Linux ll指令介绍

经常会用到ll指令来查看文件等,这里记录一下查看的详情信息 介绍样例 drwxrwxrwx 3 root root 4096 Oct 30 10:41 backup drwxrwxrwx 表示文件的属性。Linux的文件基本上分为三个属性:可读(r),可写(w&…

Linux命令`ll`的各列什么意思

下面是随便一个目录下的ll命令,显示的结果分为7个列。 第1列是文件类型加权限 第一个字符为文件类型 d表示目录l表示软连接-表示文件c表示字符设备文件 后面的字符分为三组 所有者u(r表示可读,w表示可写,x表示可执行&#xff09…

Linux 中 ll与ls -l 区别

linux下命令“ll”是“ls -l"的别名。别名相当于windows里的快捷方式。 但是 ll会列出该文件下的所有文件信息,包括隐藏的文件,而ls-l只列出显式文件。 如图 : . 本级 …上一级

ls、ls -a、ls -l、ls -al、ll、ll -a区别

ls 仅罗列出当前文件名或目录名 ls -a 列出目录下的所有文件,包括以 . 开头的隐含文件。 ls -l 列出文件的详细信息。 total 1948 是第5列的和(单位k) 第一列中第一小列代表文件 - 文件(普通文件,图片,压缩包) l 链接文件 类似于Window…

linux ll命令是什么

ll并不是linux下一个基本的命令,它实际上是ls -l的一个别名。 # 查看指定目录下的内容,默认查看当前目录下内容 ls [-ald] [目录名] # 目录名不填写,默认为当前目录。 # -a:列出的全部的文件,包括隐藏文件 # -l&#x…

linux ls和 ll 命令

ll 命令列出的信息更加详细,有时间,是否可读写等信息 ll命令和ls -l命令结果区别: 上面结果说明: ll会列出该文件下的所有文件信息,包括隐藏的文件,而ls -l只列出显式文件,说明这两个命令还…

Linux “ll“ 命令详解

“ls -l” "ls -al" ll 用来查询当前目录下文件及目录的详情 1. 第一位文件类型 - 普通文件 , d 目录文件,I 链接文件,p 管理文件, b 块设备文件, c 字符设备文件, s 套接字文件 2.文件属性 第…

linux命令 ll信息详解

本文链接:https://blog.csdn.net/LEON1741/article/details/82386520 在linux下使用“ls -l”或者“ls -al”或者“ll”命令查看文件及目录详情时,shell中会显示出好几列的信息。平时也没怎么注意过,今天忽然心血来潮想了解一下,于…

STM32LL库系列教程(一)—— LL库概览及资料

**开发平台** : 正点原子 探索者STM32F407ZET6cube mx:V 5.1.0keil uVision5项目地址: github : https://github.com/liliang1918/STM32LL 码云 :https://gitee.com/liang1918/stm32_ll_library 注意: 本教程默认读…

Linux命令`ll`的结果解析

下面是随便一个目录下的ll命令,显示的结果分为7个列。 第1列是文件类型加权限。 第一个字符为文件类型, d表示目录,l表示软连接,-表示文件,c表示字符设备文件。 后面的字符分为三组, 所有者u(…

linux命令中ll和ls的区别

Linux命令 ls 和 ll 的使用方法与基本区别 Linux 命令 ls 和 ll 的使用方法: 1.ll 罗列出当前文件或目录的详情信息,含有时间、读写权限、大小等信息 ,像Windows显示的详细信息。ll是“ls -l"的别名。相当于Windows里的快捷方式。可以…

特别行动队[斜率优化]

传送门 首先考虑暴力的DP sum(i--j) 可以用前缀和维护 把式子拆开 ...是一坨常数,这里省略了 我们令 yf[j]a*s[j]*s[j]-b*s[j] , xs[j] , k2*a*s[i] , bf[i] 把点绘制出来差不多是这样[注意斜率是负的] 数形结合来看,代码还是比较好写 #include<bits/stdc.h> #…

1911: [Apio2010]特别行动队

1911: [Apio2010]特别行动队 Time Limit: 4 Sec Memory Limit: 64 MB Submit: 4061 Solved: 1922 [ Submit][ Status][ Discuss] Description Input Output Sample Input 4 -1 10 -20 2 2 3 4 Sample Output 9 题解&#xff1a; 首先我们可以推出原始方程式&#xff1a;…

特别行动队题解

特别行动队题解 刷水题什么的最愉快了。 题意十分明了&#xff0c;就是选出一种分配方案将士兵分为若干组&#xff0c;使修正后的战斗力最大。 我们先可以写出暴力dp转移&#xff1a; 设\(f[n]\)为将前\(i\)个士兵分组&#xff0c;且第\(i\)个士兵为最后一组最后一个的最大战斗…

特别行动队

Solution 设 f[x] 表示特别行动队前 x 名士兵编好队的最大战斗力。 f[x]=maxi−1k=0fk+a[A(i)−A(k)]x+b[A(i)−A(k)]+c 化简、移项&#xff1a;得到斜率方程&#xff1a; f[k]−f[j]a[A2(k)−A2(j)]−b[A(k)−A(j)]>2aA(i)⋅[A(k)−A(j)] 然后就可以斜率优化了。 Co…

浅谈斜率优化(例题特别行动队)

题目描述 你有一支由 n n n名预备役士兵组成的部队&#xff0c;士兵从 1 1 1到 n n n编号&#xff0c;要将他们拆分 成若干特别行动队调入战场。出于默契的考虑&#xff0c;同一支特别行动队中队员的编号应该连续&#xff0c;即为形如 ( i , i 1 , . . . , i k ) ( i , i 1 …