3.1 MySQL数据库的基本操作


3.1关系数据库标准语言SQL

  • 什么是SQL?

SQL(Structured Query Language,结构化查询语言)是一种专门用来管理和操作关系数据库的编程语言。SQL的简洁性体现在以下几个方面:

简洁的SQL代码示例:

-- 查询所有用户的名字和邮箱
SELECT name, email FROM users;

-- 插入新用户
INSERT INTO users (name, email) VALUES ('John Doe', 'john@example.com');

-- 更新用户信息
UPDATE users SET email = 'newemail@example.com' WHERE name = 'John Doe';

-- 删除用户
DELETE FROM users WHERE name = 'John Doe';

3.1.1 SQL语言的发展和特点

SQL语言的发展和特点可以从以下几个方面来简洁地概述:

  • 发展历史
  1. 1970年代:IBM的研究员Donald D. Chamberlin和Raymond F. Boyce开发了SQL的原型,称为SEQUEL(Structured English Query Language)。
  2. 1980年代:SQL成为关系数据库管理系统的标准语言,随着关系数据库的普及而广泛使用。
  3. 1986年:美国国家标准协会(ANSI)发布了第一个SQL标准。
  4. 1992年:国际标准化组织(ISO)和ANSI发布了SQL-92标准,引入了更多的功能,如存储过程、触发器等。
  5. 1999年:SQL:1999(SQL3)进一步扩展了SQL的功能,包括对对象关系特性的支持。
  6. 2016年:SQL:2016发布,引入了更多的功能,如JSON支持、递归查询等。

特点

  1. 声明式:用户只需声明要执行的操作,不需要指定如何执行。
  2. 结构化:SQL基于关系模型,数据以表格形式存储,表格之间通过关系连接。
  3. 标准化:SQL是一种标准化的语言,不同的数据库系统都遵循相同的基本语法。
  4. 可扩展性:SQL支持多种数据类型和复杂的查询操作。
  5. 数据操作语言(DML):包括SELECT、INSERT、UPDATE、DELETE等,用于数据的增删改查。
  6. 数据定义语言(DDL):包括CREATE、ALTER、DROP等,用于定义和管理数据库结构。
  7. 数据控制语言(DCL):包括GRANT、REVOKE等,用于定义数据的访问权限。
  8. 事务控制:支持事务处理,确保数据的一致性和完整性。
  9. 嵌套查询:允许在查询中嵌套其他查询,提高查询的灵活性。
  10. 连接操作:支持不同类型的连接操作,如内连接、外连接、交叉连接等。
  11. 聚合函数:提供SUM、AVG、COUNT、MAX、MIN等函数,用于对数据进行聚合计算。
  12. 索引支持:可以创建索引以提高查询性能。
  13. 跨平台:SQL可以在多种操作系统和数据库系统上运行。

SQL语言的这些特点使其成为处理关系数据库的强大工具,广泛应用于数据管理和分析领域。

3.1.2 SQL语言的组成

SQL语言主要由以下几个部分组成,每个部分都有其特定的功能和用途:

  1. 数据定义语言(DDL):用于定义和管理数据库结构,包括:

    • CREATE:创建数据库、表、视图、索引等。
    • ALTER:修改数据库结构,如添加或删除表的列。
    • DROP:删除数据库对象,如表、视图等。
    • TRUNCATE:快速删除表中的所有数据。
  2. 数据操纵语言(DML):用于对数据库中的数据进行操作,包括:

    • SELECT:查询数据库中的数据。
    • INSERT:向表中插入新数据。
    • UPDATE:更新表中的数据。
    • DELETE:从表中删除数据。
  3. 数据控制语言(DCL):用于定义数据库的访问权限和安全策略,包括:

    • GRANT:授予用户权限。
    • REVOKE:撤销用户权限。
  4. 事务控制语言(TCL):用于管理数据库事务,确保数据的一致性和完整性,包括:

    • BEGINSTART TRANSACTION:开始一个新的事务。
    • COMMIT:提交事务,使所有更改永久生效。
    • ROLLBACK:回滚事务,撤销所有未提交的更改。
  5. 查询语句:SQL的核心,用于从数据库中检索数据,包括:

    • WHERE 子句:用于过滤记录。
    • JOIN 操作:用于连接多个表。
    • GROUP BY 子句:用于数据分组。
    • ORDER BY 子句:用于排序结果。
    • HAVING 子句:用于过滤分组后的数据。
  6. 数据类型:定义数据的类型,如整型(INT)、浮点型(FLOAT)、字符型(VARCHAR)等。

  7. 函数:SQL提供了多种内置函数,用于处理数据,包括:

    • 字符串函数:如 CONCAT, SUBSTRING, UPPER, LOWER 等。
    • 数值函数:如 ABS, ROUND, CEILING, FLOOR 等。
    • 日期和时间函数:如 NOW, CURDATE, DATE_ADD 等。
    • 聚合函数:如 SUM, AVG, COUNT, MAX, MIN 等。
  8. 子查询:在查询中嵌套另一个查询,可以是嵌套在 SELECT, FROM, 或 WHERE 子句中。

  9. 存储过程和函数:允许用户编写可重复使用的代码块,存储在数据库中,可以是:

    • 存储过程:一系列SQL语句的集合,可以带参数,用于执行复杂的操作。
    • 函数:返回单个值的SQL代码块,通常用于计算或转换数据。
  10. 触发器:数据库管理系统在特定事件(如INSERT、UPDATE、DELETE)发生时自动执行的SQL代码。

这些组成部分共同构成了SQL语言,使其能够高效地管理和操作关系数据库。

  • 19
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值