当前位置: 首页 > news >正文

【重学 MySQL】十一、SQL 概述

【重学 MySQL】十一、SQL 概述

  • SQL 背景知识
    • 产生与发展
    • 主要特点
    • 主要应用
    • SQL语言的发展趋势
  • SQL 语言排行榜
  • SQL 分类
    • 数据查询语言(DQL, Data Query Language)
    • 数据操纵语言(DML, Data Manipulation Language)
    • 数据定义语言(DDL, Data Definition Language)
    • 数据控制语言(DCL, Data Control Language)
    • 事务控制语言(TCL, Transaction Control Language)

在这里插入图片描述

SQL 背景知识

产生与发展

  • 产生:SQL语言的雏形最早由美国IBM公司的Raymond F. Boyce和Donald D. Chamberlin在1974年提出。在1975年至1979年期间,SQL在System R上首次实现,当时称为SEQUEL。
  • 发展:随着时间的推移,SQL语言逐渐发展和完善。1986年推出了SQL-86标准,正式命名为“SQL: Structured Query Language”。此后,ANSI/ISO陆续推出了多个版本的SQL标准,包括SQL-89、SQL-92(也称为SQL2)、SQL-99(也称为SQL3)等。这些标准不断引入新的特性和功能,以满足数据库技术发展的需求。

主要特点

  • 综合统一:SQL集数据定义语言(DDL)、数据操纵语言(DML)、数据控制语言(DCL)的功能于一体,语言风格统一,可以独立完成数据库生命周期中的全部活动,包括定义数据库中的数据、建立数据库、查询、更新、控制数据保护等。
  • 高度非过程化:使用SQL进行数据操作,用户只需提出“做什么”,而不必指明“怎么做”,具体的实现过程由系统自动完成。这大大减轻了用户负担,提高了工作效率。
  • 面向集合的操作方式:SQL采用集合操作方式,不仅操作对象、查询结果可以是元组的集合,而且一次插入、删除、更新操作的对象也可以是元组的集合。

主要应用

SQL语言的应用场景非常广泛,几乎涵盖了所有需要数据库支持的业务领域。以下是一些主要的应用场景:

  • 客户关系管理(CRM):通过SQL数据库存储客户信息、交易记录等数据,实现客户信息的管理和分析。
  • 人力资源管理(HRM):存储员工档案、考勤记录、薪资信息等数据,支持企业人力资源管理和员工绩效评估。
  • 供应链管理(SCM):记录供应商信息、库存情况、订单状态等数据,实现供应链的优化和管理。
  • 电子商务:存储商品信息、库存状态、价格策略等数据,支持商品管理和销售。
  • 数据分析:基于历史交易数据和市场情报,进行数据挖掘和分析,为决策提供支持。

SQL语言的发展趋势

随着大数据、云计算等技术的快速发展,SQL语言也在不断演进和扩展。近年来,SQL标准陆续推出了新的版本,如SQL:2003、SQL:2008、SQL:2011、SQL:2016等,这些新版本增加了更多的特性和功能,以支持更复杂的数据处理和分析需求。例如,SQL:2016增加了对JSON数据的支持,使得SQL在处理半结构化数据方面更加灵活和强大。

综上所述,SQL作为一种关系数据库的标准语言,具有综合统一、高度非过程化、面向集合的操作方式等特点,在多个领域都有广泛的应用。随着技术的不断发展,SQL语言也在不断更新和完善,以满足日益复杂的数据处理和分析需求。

SQL 语言排行榜

自从 SQL 加入 TIOBE 编程语言排行榜,就一直保持在 TOP10
查询官网:https://www.tiobe.com/tiobe-index/
在这里插入图片描述

SQL 分类

SQL(Structured Query Language,结构化查询语言)是一种用于管理关系型数据库系统的标准化语言。根据功能和应用领域的不同,SQL语言可以分为几个主要类别。

数据查询语言(DQL, Data Query Language)

  • 功能:用于检索数据库中的数据,是SQL中最常用的功能之一。
  • 核心指令:SELECT。
  • 特点:DQL通常与FROM、WHERE、GROUP BY、HAVING、ORDER BY等子句结合使用,以构造复杂的查询语句。
  • 示例:查询数据库中某个表的特定字段或记录,如SELECT column1, column2 FROM table_name WHERE condition;

数据操纵语言(DML, Data Manipulation Language)

  • 功能:用于对数据库表中的数据进行增、删、改等操作。
  • 核心指令:INSERT、UPDATE、DELETE。
  • 特点:DML操作直接影响数据库表中的数据,而不改变表的结构。
  • 示例:向表中插入新记录(INSERT),更新表中现有记录(UPDATE),从表中删除记录(DELETE)。

数据定义语言(DDL, Data Definition Language)

  • 功能:用于定义数据库中的数据结构,如表、索引、视图等对象的创建、修改和删除。
  • 核心指令:CREATE、ALTER、DROP等。
  • 特点:DDL操作会改变数据库的结构,如添加新的表、修改表结构或删除表等。
  • 示例:创建新表(CREATE TABLE),修改表结构(ALTER TABLE),删除表(DROP TABLE)。

数据控制语言(DCL, Data Control Language)

  • 功能:用于定义数据库、表、字段的访问权限和安全级别。
  • 核心指令:GRANT、REVOKE等。
  • 特点:DCL操作主要关注于数据库的安全性,通过控制不同用户对数据库对象的访问权限来确保数据的安全。
  • 示例:授予用户访问权限(GRANT),撤销用户访问权限(REVOKE)。

事务控制语言(TCL, Transaction Control Language)

  • 功能:用于管理数据库中的事务,确保数据的完整性和一致性。
  • 核心指令:COMMIT、ROLLBACK、SAVEPOINT等。
  • 特点:TCL操作允许将多个DML操作组合成一个逻辑事务,通过提交(COMMIT)或回滚(ROLLBACK)来确保事务的原子性、一致性、隔离性和持久性(ACID特性)。
  • 示例:提交事务(COMMIT),回滚事务(ROLLBACK)。

需要注意的是,虽然TCL在某些分类中被单独列出,但在一些资料中,它可能被视为DML或DCL的一部分,或者与它们并列作为SQL的一个独立类别。这取决于具体的分类方法和上下文环境。

综上所述,SQL语言根据其功能和应用领域的不同,可以分为数据查询语言(DQL)、数据操纵语言(DML)、数据定义语言(DDL)、数据控制语言(DCL)以及事务控制语言(TCL)等几个主要类别。这些类别共同构成了SQL语言的完整体系,使得用户能够高效、安全地管理和利用数据库系统。

http://www.lryc.cn/news/430989.html

相关文章:

  • (一)模式识别——基于SVM的道路分割实验(附资源)
  • Python | Leetcode Python题解之第391题完美矩形
  • Rust模块std::thread
  • Leetcode Day20 打家劫舍
  • 云计算之数据库
  • 开发软件,什么类型的重要信息的日志要存到数据库表里面
  • websocket和轮询的区别?
  • 2024 年全国大学生数学建模竞赛(国赛)浅析
  • 持续集成与持续部署(CI/CD)的深入探讨
  • hyperf json-rpc
  • 基于SpringBoot的外卖点餐系统
  • 网络编程day02(字节序、TCP编程)
  • 萌新6:临场发挥(区间dp)
  • 《数字信号处理》学习04-离散时间系统中的线性时不变系统
  • ABAP 调试宏DEFINE
  • Golang | Leetcode Golang题解之第393题UTF-8编码验证
  • HarmonyOS开发实战( Beta5.0)DevEco Device Tool开发环境搭建实践
  • WIFI贴项目到底是不是“骗局”呢?由我来揭秘!
  • C++ string类—string修饰符、操作、非成员函数
  • PVN3D(一)代码框架
  • 「OC」剪不断,理还乱——UIResponder、UIGestureRecognizer、UIControl的响应优先级探究
  • GitHub Copilot的详细介绍
  • opencv之阈值处理
  • oracle startup失败,ORA-01078: failure in processing system parameters
  • 【python因果推断库7】使用 pymc 模型的工具变量建模 (IV)2
  • 【2024数模国赛赛题思路公开】国赛B题思路丨附可运行代码丨无偿自提
  • 智能优化特征选择|基于鲸鱼WOA优化算法实现的特征选择研究Matlab程序(KNN分类器)
  • 使用udp进行通信
  • C#上位机使用Microsoft.Office.Interop.Excel和EPPlus库对Excel或WPS表格进行写操作
  • java重点学习-redis