第四章SQL结构化查询语言 学习目的和要求 ◆定义子语言 ◆操纵子语言 ◆ MS SQL SERVER和 SYBASE中的TSQL Designed by Tao Hongcai 2021年2月23日1
Designed by Tao Hongcai 2021年2月23日 1 第四章 SQL结构化查询语言 学习目的和要求 ◆ 定义子语言 ◆ 操纵子语言 ◆ MS SQL SERVER和SYBASE中的T-SQL
41SQL语言特点及分级 SQL语言的特点 ①DDL:SQL子集,创建、修改和删除数据库、表和视图;定义 ICs;非标准索引的创建与删除。 ②DML:SQL子集,插入、删除、修改和查询表中数据。 ③嵌入( Embedded)与动态( Dynamic)SQL:嵌入SQL允许SQL代码 从宿主语言( Host Language)程序中调用;动态SQL允许在运行时 (run-time)构造并执行。 ④4 Triggers:在SQL:1999中支持,一组由DBMS执行的操作。 ⑤ Security:控制用户访问DB对象的机制。 ⑥ Transaction Management:相应命令,显式控制事务执行。 ⑦ Client- Server execution& Remote db access:客户应用程序如 何连接DB和如何访问DB中的数据。 Designed by Tao Hongcai 2021年2月23日2
Designed by Tao Hongcai 2021年2月23日 2 4.1 SQL语言特点及分级 一. SQL语言的特点 ② DML:SQL子集,插入、删除、修改和查询表中数据。 ③ 嵌入(Embedded)与动态(Dynamic) SQL:嵌入SQL允许SQL代码 从宿主语言(Host Language)程序中调用;动态SQL允许在运行时 (run-time)构造并执行。 ⑤ Security:控制用户访问DB对象的机制。 ④ Triggers:在SQL:1999中支持,一组由DBMS执行的操作。 ⑥ Transaction Management:相应命令,显式控制事务执行。 ⑦ Client-Server Execution & Remote DB Access:客户应用程序如 何连接DB和如何访问DB中的数据。 ① DDL:SQL子集,创建、修改和删除数据库、表和视图;定义 ICs;非标准索引的创建与删除
二.SQL-92的分级 ① Entry SQL:接近SQL-89。 ② Intermediate sql:包含SQL-92近一半的新特点。 ③Fu!SQL:完全版SQL。 Designed by Tao Hongcai 2021年2月23日3
Designed by Tao Hongcai 2021年2月23日 3 二. SQL-92的分级 ② Intermediate SQL:包含SQL-92近一半的新特点。 ③ Full SQL:完全版SQL。 ① Entry SQL:接近SQL-89
42定义子语言DDL 回答如下问题: 1.定义子语言的三个命令关键字? 2.数据库定义? 3表定义? 4.视图定义? 5索引定义? Designed by Tao Hongcai 2021年2月23日4
Designed by Tao Hongcai 2021年2月23日 4 4.2 定义子语言DDL 回答如下问题: 1.定义子语言的三个命令关键字? 2.数据库定义? 3.表定义? 5.索引定义? 4.视图定义?
定义子语言的三个命令关键字 (1 Create (2)Drop (3)Alter 说明 ①各个命令关键字后应紧跟所要定义的对象关键字,如数据库 为 DATABASE、表为 TABLE、视图为ⅥEW、索引为 INDEX。 例如: CREATE DATABASE、 DROP DATABASE、 ALTER DATABASE 等等 ② SQL SERVER中可用此三命令的数据库对象有: DATABASE、 TABLE、ⅥEW、|NDEX、TR|GGER、 PROCEDURE、RULE、 DEFAULT、 UNCT|0N。 ③ SQL SERVER中,有几个数据库对象没有 ALTER命令,如: INDEX、RULE、 DEFAULT没有 ALTER。 Designed by Tao Hongcai2021年2月23日5
Designed by Tao Hongcai 2021年2月23日 5 一.定义子语言的三个命令关键字 说明: (1) Create (2) Drop (3) Alter ① 各个命令关键字后应紧跟所要定义的对象关键字,如数据库 为DATABASE、表为TABLE、视图为VIEW、索引为INDEX。 例如:CREATE DATABASE、DROP DATABASE、ALTER DATABASE 等等。 ② SQL SERVER中可用此三命令的数据库对象有:DATABASE、 TABLE、VIEW、INDEX、TRIGGER、PROCEDURE、RULE、DEFAULT、 FUNCTION。 ③ SQL SERVER中,有几个数据库对象没有ALTER命令,如: INDEX、RULE、DEFAULT没有ALTER