本章的重点包括:
SQL历史简介
介绍数据库管理系统
一些基本术语和概念
介绍本书所用的数据库
1.1 SQL定义与历史
数据库管理系统(DBMS)
关系型数据库管理系统(RDBMS)
1.1.1 什么是SQL
结构化查询语言(SQL)是与关系型数据库进行通信的标准语言。
1.1.2 什么是ANSI SQL
美国国家标准化组织(ANSI),最新标准是SQL-2008 (本书第1版2011.11)
1.1.3 新标准:SQL-2008
9个相关文档
SQL/架构、SQL/基础、SQL/调用级接口、SQL/持久存储管理、外部数据管理(SQL/MED)、对象语言绑定、信息和定义方案、使用Java编程语言的例程和类型、XML相关规范
1.1.4 什么是数据库
数据库就是数据集合。它能够存储信息,用户能够以有效且高效的方式检索其中的信息。
1.1.5 关系型数据库
关系型数据库由被称为表的逻辑单元组成,这些表在数据库内部彼此关联。
1.2 SQL会话
1.2.1 CONNECT
命令CONNECT用于建立与数据库的连接,它可以申请连接,也可以修改连接。
CONNECT user@database
1.2.2 DISCONNECT和EXIT
命令DISCONNECT用于断开用户与数据库的连接。
当使用EXIT命令离开数据库时,SQL会话就结束了,而且用于访问数据库的软件通常会关闭。
DISCONNECT
1.3 SQL命令的类型
主要的分类包括:
数据定义语言(DDL);
数据操作语言(DML);
数据查询语言(DQL);
数据控制语言(DCL);
数据管理命令;
事务控制命令。
1.3.1 定义数据库结构
数据定义语言(DDL)用于创建和重构数据库对象,比如创建和删除表。
CREATE TABLE
ALTER TABLE
DROP TABLE
CREATEE INDEX
ALTER INDEX
DROP INDXE
CREATE VIEW
DROP VIEW
1.3.2 操作数据
数据操作语言(DML)用于操作关系型数据库对象内部的数据
INSET
UPDATE
DELETE
1.3.3 选择数据
SELECT
1.3.4 数据控制语言
SQL里的数据控制语言用于控制对数据库里数据的访问。这些数据控制语言(DCL)命令通常用于创建与用户访问相关的对象,以及控制用户的权限。
ALTER PASSWORD
GRANT
REVORK
GREATE SYNONYM
1.3.5 数据管理命令
数据管理命令用于对数据库里的操作进行审计和分析,还有助于分析系统性能。
START AUDIT
STOP AUDIT
1.3.5 事务控制命令
COMMINT:保存数据库事务
ROLLBACK:撤销数据库事务
SAVEPOINT:在一组事务里面创建标记点以用于回退(ROLLBACK)
SET TRANSACTION:设置事务的名称
1.4 本书使用的数据库
1.4.1 表命名标准
每个表的名称都以_TBL作为后缀,后缀_INX,这说明对象是表的索引。
1.4.3 表的构成
表是数据存储的最常见和最简单的形式。
一、字段
字段是表里面的一列,用于保持每条记录的特定信息。
二、记录或一行数据
记录,也被称为一行数据,是表里的各行。
在关系型数据库的表里一行数据是指一条完整的记录。
三、列
列是表里垂直的一项,包含表里特定字段的全部信息。
一列包含了表里每条记录中特定字段的全部信息。
四、主键
主键用于区分表里第一条数据行。
主键的特性确保了所有产品标识都是唯一的。
五、NULL值
NULL是表示“没有值”的专用术语。NULL并不等同于0或空格。值为NULL的字段在表创建过程中会保持为空。
1.4.4 范例和练习
本书练习MySQL、Microsoft SQL Server 和Oracle数据库三选一