数据库、数据库管理系统、SQL和图形界面工具的关系

简介: 数据库、数据库管理系统、SQL和图形界面工具的关系

刚刚接触数据库的小伙伴可能会对几个名词混淆不清,一上来又是命令又是工具的,这篇文章帮大家来明确一下这几个概念之间的关系。

一、数据库(DB)

数据库是我们接触这一学科时认识的第一个词,也是最容易产生歧义的一个词。为什么这么说呢?因为它既有自己的意义,也是其他名词的简称。

  • 数据

数据的概念大家并不陌生,这是一个很广义的词。书籍、磁盘、储存卡都能成为数据存储的载体,书籍中的文字、存储设备中的文本文件、音频、视频等等都可以称之为数据。如果,你去查百度百科的话,定义简直不要更抽象:

数据(data)是事实或观察的结果,是对客观事物的逻辑归纳,是用于表示客观事物的未经加工的原始素材。

数据可以是连续的值,比如声音、图像,称为模拟数据。也可以是离散的,如符号、文字,称为数字数据。

在计算机系统中,数据以二进制信息单元0,1的形式表示。

既然我们现在接触的是信息技术和计算机相关的领域,那我们划一下重点,数据的定义可以是:存储在设备中的很重要的文件,通常是某些应用正常使用的基础。那么根据数据使用的时机和特点,我们还可以这样分类:内存中的数据和硬盘中的数据。我们知道,当一个程序开始运行时,首先要在内存中申请空间,然后根据程序的需要再去加载相应的资源。

比如我们运行一个游戏,可能自身的大小为10GB,但是运行的时候并不需要这么多,因为并不需要把所有的文件都加载到内存中,当我们切换到一个新的场景或者新开始一个游戏时,就需要加载一些素材和数据,这个时候就会从硬盘中加载一些(同时可能会释放一些无用的资源)。

当我们退出游戏时,比如我们积攒了一万金币,如果没有存档,那肯定会很悲剧,因为内存中的数据是不会永久保存的,当程序退出或者计算机重新启动,其中的内容就会被释放掉(毕竟那么多软件等着用呢)。而如果我们存档,就相当于把数据永久保存到了硬盘上,下次再进入时,是从硬盘上进行读档。

也就是说硬盘上的数据是持久化保存的,是以各种文件格式存在的,可能是游戏程序所需要的特定数据文件格式,也可能是我们熟知的各种文件格式。

  • 数据库

理解了数据的概念和相关特点后,我们直接引用百度百科的定义:

数据库是“按照数据结构来组织、存储和管理数据的仓库”。是一个长期存储在计算机内的、有组织的、可共享的、统一管理的大量数据的集合。

简而言之,数据库就是具有某种数据格式的数据的集合。通常我们所说的数据库都将数据存储在硬盘上,对于这样的数据集合必然要通过相应的软件去管理,这样的软件被称作数据库管理系统,即:DBMS。所以,在很多时候我们会用“数据库”这个词直接代表“数据库管理系统”,因为二者其实是密不可分的。

如果真要说两者的区别,才需要较一下真,数据库指的是存储的数据本身,而数据库管理系统指的是为管理数据库而设计的电脑软件系统。如果想要具体了解一下数据库的发展历程可以进传送门:数据库的发展与数据模型。

二、数据库管理系统(DBMS)

理解了DB(数据库)和DBMS(数据库管理系统)之间的关系后,我们再去看维基百科上面的叙述应该就很清楚了:

数据库管理系统(Database Management System,简称DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。数据库管理系统可以依据它所支持的数据库模型来作分类,例如关系式、XML;或依据所支持的电脑类型来作分类,例如服务器聚类、移动电话;或依据所用查询语言来作分类,例如SQL、XQuery;或依据性能冲量重点来作分类,例如最大规模、最高运行速度;亦或其他的分类方式。

数据库关系系统就是一个能够操作数据库的软件,用户可以通过DBMS去完成对数据的最基本操作,新增、删除、修改、查询,也就是常说的增删改查,或者洋气的称为:CURD,即:C-创建(Create)、U-更新(Update)、R-读取(Retrieve)和D-删除(Delete)。

目前我们所使用的数据库以第二代数据库为主,所学习的也都是典型的关系型数据库,如:SQL Server、MySQL、Oracle等。说到DBMS之间的区别,主要在于内置函数、数据存取策略、应用场景适用性以及数据库对象之间的差异等等。

很多小伙伴儿可能会发现,当学完一个DBMS之后,用同样的语句在另外一个DBMS上也能执行成功,于是就很兴奋的认为原来数据库就是如此简单,我已经能够驾驭多个DBMS了!对此,小编只能很冷静的告诉你:对不起,请收回你的自信。。。之所以能够通用是因为这些DBMS在设计之初都支持使用SQL,但是仅仅掌握了SQL不能说你就掌握了这个DBMS。

三、结构化查询语言(SQL)

说到SQL,其实不需要过多的解释,因为他就像Java、C、Python一样,也是一种编程语言,只不过它的目的很单一,只作用在数据库上,能够对数据直接进行操作,也支持定义函数、存储过程、触发器等数据库对象,也可以使用case-when来实现选择结构。

SQL的全称为Structured Query Language,即:结构化查询语言。1974年由Boyce和Chamberlin提出,并首先在IBM公司研制的关系数据库系统SystemR上实现。SQL从功能和作用上可以分为6类:

  • 数据查询语言(DQL):主要由SELECT、FROM、WHERE组成,用于查询数据
  • 数据操纵语言(DML):主要包含插入(INSERT)、更新(UPDATE)、删除(DELETE)三种操作
  • 数据定义语言(DDL):主要使用CREATE来创建各种数据库对象(TABLE、VIEW、INDEX等)
  • 数据控制语言(DCL):主要用于数据库的权限控制及用户对数据库对象的使用管理
  • 事务处理语言(TPL):事务处理主要为了保证一系列的操作能够全部成功或统一回滚,主要关键字包括TRANSACTION、COMMIT、ROLLBACK
  • 指针控制语言(CCL):通过指针可以对数据表以行为单位进行操作,主要关键字包括CURSOR、FETCH、CURRENT

具体的SQL语法将在后续文章中介绍,有关于SQL和DBMS的关系我想大家应该已经很清楚了,SQL是关系型数据库语言的标准,可以适用于多种关系型数据库。有些小伙伴可能听说过T-SQL,在这里也说明一下,T-SQL( Transact-SQL)是SQL的增强版,但是只能在Microsoft SQL Server数据库上使用。在有些时候也会用T-SQL来代表某一个数据库自己对SQL语言的扩展或高级用法,这里注意区分。

四、图形界面工具

说到图形界面工具,其实就是我们最常使用的软件,那为什么还要弄出这么个词呢?这是因为数据在安装以后是以一个系统服务的方式存在,需要有相应的客户端才能够访问和使用。一般安装数据库以后都会带有官方提供的客户端程序,如:Oracle的sqlplus,MySQL的mysql,但是这些客户端都是在cmd中运行的,只能通过相应的指令或SQL语句来操作,为了方便用户操作数据库,就会借助图形界面工具了,也就是说图形界面工具本身只是一个操作DBMS的可视化软件,必须连接到一个正常工作的数据库服务才能使用。

这里给大家介绍一些官方工具,大家可以根据喜好自行选择:

  • Oracle SQL Developer:Oracle数据库官方图形界面工具(免费)

下载地址:https://www.oracle.com/cn/tools/downloads/oracle-sql-developer-download.html

  • MySQL Workbench:MySQL数据库官方图形界面工具(免费)

下载地址:https://dev.mysql.com/downloads/workbench/

  • SQL Server Management Studio(SSMS):SQLServer数据库官方图形界面工具(免费)

下载地址:https://docs.microsoft.com/en-us/sql/ssms/download-sql-server-management-studio-ssms?view=sql-server-ver15

  • PL/SQL Developer:支持Oracle数据库(需自行解决收费问题)
  • SQLyog:支持MySQL数据库(旗舰版收费)
  • MySQL-Front:支持MySQL数据库,生成数据字典较方便(需自行解决收费问题)
  • Navicat Premium:支持多种数据库,新版集成了可视化组件(需自行解决收费问题)
  • DataGrip:支持多种数据库,JetBrains家族优秀的数据库界面工具(需自行解决收费问题)

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
目录
相关文章
|
关系型数据库 MySQL 数据库
阿里云数据库RDS费用价格:MySQL、SQL Server、PostgreSQL和MariaDB引擎收费标准
阿里云RDS数据库支持MySQL、SQL Server、PostgreSQL、MariaDB,多种引擎优惠上线!MySQL倚天版88元/年,SQL Server 2核4G仅299元/年,PostgreSQL 227元/年起。高可用、可弹性伸缩,安全稳定。详情见官网活动页。
1832 152
|
关系型数据库 MySQL 数据库
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎
阿里云数据库RDS支持MySQL、SQL Server、PostgreSQL和MariaDB引擎,提供高性价比、稳定安全的云数据库服务,适用于多种行业与业务场景。
1249 156
|
SQL 人工智能 Linux
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
925 5
SQL Server 2025 RC1 发布 - 从本地到云端的 AI 就绪企业数据库
|
SQL 存储 监控
SQL日志优化策略:提升数据库日志记录效率
通过以上方法结合起来运行调整方案, 可以显著地提升SQL环境下面向各种搜索引擎服务平台所需要满足标准条件下之数据库登记作业流程综合表现; 同时还能确保系统稳健运行并满越用户体验预期目标.
524 6
|
关系型数据库 分布式数据库 数据库
阿里云数据库收费价格:MySQL、PostgreSQL、SQL Server和MariaDB引擎费用整理
阿里云数据库提供多种类型,包括关系型与NoSQL,主流如PolarDB、RDS MySQL/PostgreSQL、Redis等。价格低至21元/月起,支持按需付费与优惠套餐,适用于各类应用场景。
|
SQL Oracle 关系型数据库
Oracle数据库创建表空间和索引的SQL语法示例
以上SQL语法提供了一种标准方式去组织Oracle数据库内部结构,并且通过合理使用可以显著改善查询速度及整体性能。需要注意,在实际应用过程当中应该根据具体业务需求、系统资源状况以及预期目标去合理规划并调整参数设置以达到最佳效果。
758 8
|
SQL 人工智能 Java
用 LangChain4j+Ollama 打造 Text-to-SQL AI Agent,数据库想问就问
本文介绍了如何利用AI技术简化SQL查询操作,让不懂技术的用户也能轻松从数据库中获取信息。通过本地部署PostgreSQL数据库和Ollama模型,结合Java代码,实现将自然语言问题自动转换为SQL查询,并将结果以易懂的方式呈现。整个流程简单直观,适合初学者动手实践,同时也展示了AI在数据查询中的潜力与局限。
1563 8
|
安全 关系型数据库 数据管理
阿里云数据库:构建高性能与安全的数据管理系统
阿里云数据库提供RDS、PolarDB、Tair等核心产品,具备高可用、弹性扩展、安全合规及智能运维等技术优势,广泛应用于电商、游戏、金融等行业,助力企业高效管理数据,提升业务连续性与竞争力。
|
SQL 人工智能 Linux
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
SQL Server 2025 RC0 发布 - 从本地到云端的 AI 就绪企业数据库
548 5

热门文章

最新文章