第三章SQL语言基础 SQL概述 ◆ SQL (structured query language, 结构化查询 语言),功能包括査询、操纵、定义、控制 ◆功能丰富、语言简洁、使用灵活,倍受欢迎。 ◆1974年由 Boyce, Chamberlin提出,1975年在IBM 公司的 System R上首次实现。原型称为 SEQUEL (Structured English QUEry Language) ◆1986年 ANSI SQL-86标准,是第一个SQL标准。 1987年成为国际标准。 ◆1992年SQL-92标准(简称SQL2)
1 第三章 SQL 语言基础 SQL概述 SQL (Structured query Language,结构化查询 语言),功能包括查询、操纵、定义、控制。 功能丰富、语言简洁、使用灵活,倍受欢迎。 1974年由Boyce,Chamberlin提出,1975年在IBM 公司的System R上首次实现。原型称为 SEQUEL(Structured English QUEry Language). 1986年ANSI SQL-86标准,是第一个SQL 标准。 1987年成为国际标准。 1992年SQL-92标准(简称SQL2)
◆1999年SL-99标准(简称SQL3)。增加了对对象关 q系模型的支持。目前仅部分实现。 ◆最流行的国际标准数据库语言 主要特点: ◆SQL是非结构化的语言,使用SQL查询数据库时, 只需要告诉它做什么而不用告诉它如何去做 ◆SQL本身不提供任何程序流程控制结构,而是通过 PL/SQL提供SQL语言的过程化功能 ◆SQL提供相对固定的数据类型,一般不需要扩展 ◆SQL本身十分灵活,方便易学
2 1999年SQL-99标准(简称SQL3)。增加了对对象关 系模型的支持。目前仅部分实现。 最流行的国际标准数据库语言。 主要特点: SQL是非结构化的语言,使用SQL 查询数据库时, 只需要告诉它做什么而不用告诉它如何去做。 SQL 本身不提供任何程序流程控制结构,而是通过 PL/SQL提供SQL语言的过程化功能 SQL提供相对固定的数据类型,一般不需要扩展 SQL本身十分灵活,方便易学
标准SQL只包含9种语句: ◆数据查询: select 数据定义: create,drop, alter ◆数据操纵: insert, update, delete ◆数据控制: grant, revoke
3 标准SQL只包含9种语句: 数据查询:select 数据定义: create, drop, alter 数据操纵: insert, update, delete 数据控制: grant, revoke
SQL语言分类 ◆数据定义语言(DL),用于定义数据结构 ◆数据操纵语言(DML),用于检索和修改数 据结构 ◆数据控制语言(DCL),用于规定数据库用 户的各种权限 ◆数据库事务处理,用来保证数据库的完整性
4 数据定义语言(DDL),用于定义数据结构 数据操纵语言(DML),用于检索和修改数 据结构 数据控制语言(DCL),用于规定数据库用 户的各种权限 数据库事务处理,用来保证数据库的完整性 SQL语言分类
SQL语言分类 ◆数据定义语言(DDL):用于定义数据结 构 ◆能使用户完成下列任务 创建数据库对象 删除数据库对象 更改数据库对象
5 SQL语言分类 数据定义语言(DDL):用于定义数据结 构 能使用户完成下列任务 ◼ 创建数据库对象 ◼ 删除数据库对象 ◼ 更改数据库对象
常用的DDL语句包括: ◆ Create Table:创建数据库表 ◆ Create index:创建数据库表的索引 ◆ Drop table:删除数据库表 ◆ Drop index:删除数据库表的索引 ◆ Truncate:删除表中所有行 ◆ Alter tab1e:增加表列,重定义表列,更改 存储分配 ◆ Alter table add constraint:在已有的表上 增加约束
6 常用的DDL语句包括: Create Table:创建数据库表 Create Index:创建数据库表的索引 Drop Table:删除数据库表 Drop Index:删除数据库表的索引 Truncate:删除表中所有行 Alter Table:增加表列,重定义表列,更改 存储分配 Alter Table ADD CONSTRAINT :在已有的表上 增加约束
◆数据操纵语言DM):允许用户对数据库 中的数据进行 Insert, Update, Delete和 Select等操作 ◆常用DM语句包括: ◆ Insert:增加数据行到表 ◆ Delete:从表中删除数据行 ◆ Update:更改表中数据 ◆ Select:从表中或视图中检索数据行
7 数据操纵语言(DML):允许用户对数据库 中的数据进行Insert,Update,Delete和 Select等操作 常用DML语句包括: Insert :增加数据行到表 Delete:从表中删除数据行 Update:更改表中数据 Select:从表中或视图中检索数据行
◆数据控制语言(DCL):用于规定数据库 用户的各种权限 ◆常用的数据控制语句包括: ◆ GRANT:将权限或角色授予用户或其它角 ◆ REVOKE:从用户或数据库角色回收权限 ◆ Set role:禁止或允许一个角色
8 数据控制语言(DCL):用于规定数据库 用户的各种权限 常用的数据控制语句包括: GRANT:将权限或角色授予用户或其它角 色 REVOKE:从用户或数据库角色回收权限 Set Role:禁止或允许一个角色
◆数据库事务控制:用来保证数据库的完整 性 常用的事务处理语句包括: ◆ COMMIT WORK:把当前事务所作的更改永 久化(写入磁盘) ◆ ROLLBACK:作废上次提交以来的所有更改
9 数据库事务控制:用来保证数据库的完整 性 常用的事务处理语句包括: COMMIT WORK:把当前事务所作的更改永 久化(写入磁盘) ROLLBACK:作废上次提交以来的所有更改
◆事务:指作为单个逻辑工作单元执行的 系列操作,而这些逻辑工作单元需要 具有原子性,一致性,隔离性和持久性 四个属性。 ◆原子性:指事务必须是原子工作单元, 即对于事务所进行数据修改,要么全都 执行,要么全都不执行 10
10 事务:指作为单个逻辑工作单元执行的 一系列操作,而这些逻辑工作单元需要 具有原子性,一致性,隔离性和持久性 四个属性。 原子性:指事务必须是原子工作单元, 即对于事务所进行数据修改,要么全都 执行,要么全都不执行