SQL

Eric讨论 | 贡献2020年9月19日 (六) 17:35的版本 (创建页面,内容为“SQL(Structured Query Language,结构化查询语言),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)

SQL(Structured Query Language,结构化查询语言),是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。

SQL基于关系代数和元组关系演算,包括一个数据定义语言和数据操纵语言。SQL的范围包括数据插入、查询、更新和删除,数据库模式创建和修改,以及数据访问控制。

简介

时间轴

  • 1970年代初,由IBM公司San Jose,California研究实验室的埃德加·科德发表将数据组成表格的应用原则(Codd's Relational Algebra)。
  • 1974年,同一实验室的D.D.Chamberlin和R.F. Boyce对Codd's Relational Algebra在研制关系数据库管理系统System R中,研制出一套规范语言-SEQUEL(Structured English Query Language)
  • 1976年11月,IBM Journal of R&D上公布新版本的SQL(叫SEQUEL/2)
  • 1979年,ORACLE公司首先提供商用的SQL,IBM公司在DB2和SQL/DS数据库系统中也实现了SQL。
  • 1980年,改名为SQL。
  • 1986年10月,美国ANSI采用SQL作为关系数据库管理系统的标准语言(ANSI X3. 135-1986),后为国际标准化组织(ISO)采纳为国际标准。
  • 1989年,美国ANSI采纳在ANSI X3.135-1989报告中定义的关系数据库管理系统的SQL标准语言,称为ANSI SQL 89,该标准替代ANSI X3.135-1986版本。

关系数据库

SQL优点

  • SQL不是某个特定的DBMS(数据库管理系统)的专有语言,几乎所有重要的DBMS如:Oracle、DB2、MySQL、Microsoft SQL Server、SQLite等都支持SQL。
  • SQL简单易学

数据库基础概念

数据库管理系统

数据库管理系统(Database Management System)简称DBMS,是一种操纵和管理数据库的软件,用于建立、使用和维护数据库。它对数据库进行统一的管理和控制,以保证数据库的安全性和完整性。用户通过DBMS访问数据库中的数据,数据库管理员也通过DBMS进行数据库的维护工作。

具有代表性的数据管理系统有:Oracle、Microsoft SQL Server、Access、SQLiteMySQLPostgreSQL等。

数据库

数据库(database)

表(table),

列(column)

行(row)

主键

主键

外键

查询数据

基本查询

查询单表所有数据,如查询表products中的所有数据

SELECT * FROM products;

查询单列数据,如查询products表中的prod_name列:

SELECT prod_name FROM products;

查询多列数据,列名用逗号隔开,最后一个列名不加逗号,

SELECT prod_id, prod_name, prod_price FROM products;

排序

条件查询

单条件

组合条件

使用通配符

查询并处理数据

生成计算字段

汇总数据

使用函数处理

修改数据

插入数据

更新数据

删除数据

资源

相关网站

书籍

  • 《SQL必知必会》第四版-Ben Forta

参考文献