第12课SQ简介 12.1课前导读 12.2课堂教学 12.3上机练习 12.4课后作业
12.1 课前导读 12.2 课堂教学 12.3 上机练习 12.4 课后作业 第12课 SQL简介
12.1课前导读 SQL是 Structured Query Language的缩写,即结 构化查询语言。它是关系数据库的标准语言,来源于 70年代IBM的一个被称为 SEQUEL( Structured English Query Language)的研究项目。80年代, SL由ANSI进行了标准化,它包含了定义和操作数据 的指令。由于它具有功能丰富、使用方式灵活、语言 简洁易学等突出特点,在计算机界深受广大用户欢迎, 许多数据库生产厂家都相继推出各自支持的SQL标准 1989年4月,IS0提出了具有完整性特征的SQL,并将 其定为国际标准,推荐它为标准关系数据库语言 1990年,我国也颁布了《信息处理系统数据库语言 SQL》,将其定为中国国家标准
12.1 课前导读 SQL是Structured Query Language的缩写,即结 构化查询语言。它是关系数据库的标准语言,来源于 70 年 代 IBM 的 一 个 被 称 为 SEQUEL ( Structured English Query Language)的研究项目。80年代, SQL由ANSI进行了标准化,它包含了定义和操作数据 的指令。由于它具有功能丰富、使用方式灵活、语言 简洁易学等突出特点,在计算机界深受广大用户欢迎, 许多数据库生产厂家都相继推出各自支持的SQL标准。 1989年4月,ISO提出了具有完整性特征的SQL,并将 其定为国际标准,推荐它为标准关系数据库语言。 1990年,我国也颁布了《信息处理系统数据库语言 SQL》,将其定为中国国家标准
般说来,SQL语言具有如下特点: ①一体化语言:用S哑L可以实现数据库生命周期 中的全部活动,包括简单地定义数据库和表的结构 实现表中数据的录入、修改、删除及查询、维护、数 据库重构、数据库安全性控制等一系列操作要求 ②高度非过程化:S哑L和其他数据操作语言不同 SL是一种非过程性语言,它不必一步步地告诉计算机 如何”去做,用户只需说明做什么操作,而不用说 明怎样做,不必了解数据存储的格式及SQL命令的内部, 就可以方便地对关系数据库进行操作
一般说来,SQL语言具有如下特点: ① 一体化语言:用SQL可以实现数据库生命周期 中的全部活动,包括简单地定义数据库和表的结构, 实现表中数据的录入、修改、删除及查询、维护、数 据库重构、数据库安全性控制等一系列操作要求。 ② 高度非过程化:SQL和其他数据操作语言不同, SQL是一种非过程性语言,它不必一步步地告诉计算机 “如何”去做,用户只需说明做什么操作,而不用说 明怎样做,不必了解数据存储的格式及SQL命令的内部, 就可以方便地对关系数据库进行操作
③语言简洁:虽然SL的功能很强大,但语法却 很简单,只有为数不多的几条命令,表12-1给出了分 类的命令动词。从上表可知,它的词汇很少,初学者 经过短期的学习就可以使用SL进行数据库的存取等操 作,因此,易学易用是它的最大特点 表12-1S命令动词 SOLT 能 命令动词 数据查询 SELECt 数据定义 CREATE、DROP、 ALTER 据操纵 INSERT、 UPDATE、 DELETE 数据控制 GRANT、 REVOKE
③ 语言简洁:虽然SQL的功能很强大,但语法却 很简单,只有为数不多的几条命令,表12-1给出了分 类的命令动词。从上表可知,它的词汇很少,初学者 经过短期的学习就可以使用SQL进行数据库的存取等操 作,因此,易学易用是它的最大特点。 表12-1 SQL命令动词 SQL功能 命令动词 数据查询 SELECT 数据定义 CREATE、DROP、ALTER 数据操纵 INSERT、UPDATE、DELETE 数据控制 GRANT、REVOKE
12.2课堂教学 12.2.1SQL语句的执行 12.2.2查询功能 12.2.3操作功能 12.2.4使用 Command对象改善查询
12.2 课堂教学 12.2.1 SQL语句的执行 12.2.2 查询功能 12.2.3 操作功能 12.2.4 使用Command对象改善查询
12.2.1S0L语句的执行 1.在记录集对象的Open方法中使用SQL 2.在连接对象的 Execute方法中使用SQL 3.在命令对象的 Execute方法中使用SQL
12.2.1 SQL语句的执行 1. 在记录集对象的Open方法中使用SQL 2. 在连接对象的Execute方法中使用SQL 3. 在命令对象的Execute方法中使用SQL
12.2.1S0L语句的执行 SL语句可以在记录集对象 Recordset的0pen方法 中作为参数被执行,也可以作为链接对象 Connection 和命令对象 Command的 Execute方法中作为参数被执行
12.2.1 SQL语句的执行 SQL语句可以在记录集对象RecordSet的Open方法 中作为参数被执行,也可以作为链接对象Connection 和命令对象Command的Execute方法中作为参数被执行
1.在记录集对象的0pen方法中使用SQL 下述代码创建 Recordset对象实例,读取数据表中 符合SQL语句的记录存放在 Recordset对象中并打开 Recordset对象: 创建 Connection对象并打开连接 set conn=server createobject("adodb Connection") CS=ProviderMicrosoft jet OLEDB 4.0; Data Source conn ConnectionString=CS Server MapPath( rsgl mdb") conn. Open 创建 Recordset对象 Set oRS= Server. CreateOb ject("ADODB. Recordset") 定义SQL查询 SQL=" SELECT*FROM职工工资” 打开 Recordset对象 ORS. Open SSQL, ob jConn, 1, 1, 1
1. 在记录集对象的Open方法中使用SQL 下述代码创建Recordset对象实例,读取数据表中 符合SQL语句的记录存放在Recordset对象中并打开 Recordset对象: ' 创建Connection对象并打开连接 set conn=server.createobject("adodb.Connection") CS="Provider=Microsoft.jet.OLEDB.4.0;Data Source=" conn.ConnectionString=CS & Server.MapPath("rsgl.mdb") conn.Open ' 创建Recordset对象 Set oRS = Server.CreateObject("ADODB.Recordset") ' 定义SQL查询 sSQL = "SELECT * FROM 职工工资" ' 打开Recordset对象 oRS.Open sSQL, objConn, 1,1,1
2.在连接对象的 Execute方法中使用SQL 下述代码使用 Connection对象的 Execute方法执 行S哑L语句,并返回一个符合SQL语句的 Recordset对 象实例并打开 Recordset对象: 创建 Connection对象并打开连接 set conn=server. createobject("adodb Connection") CS="Provider=Microsoft jet OLEDB 4.0: Data Source= conn ConnectionString=CS Server MapPath( rsgI. mdb") conn. Open 定义SQL查询 SSQL=" SELECT*FROM职工工资 WHERE实发工资 BETWEEN800AND 88 返回并打开 Recordset对象 set rs=conn Execute(SSQL)
2. 在连接对象的Execute方法中使用SQL 下述代码使用Connection对象的Execute方法执 行SQL语句,并返回一个符合SQL语句的Recordset对 象实例并打开Recordset对象: ' 创建Connection对象并打开连接 set conn=server.createobject("adodb.Connection") CS="Provider=Microsoft.jet.OLEDB.4.0;Data Source=" conn.ConnectionString=CS & Server.MapPath("rsgl.mdb") conn.Open ' 定义SQL查询 sSQL = "SELECT * FROM 职工工资 WHERE 实发工资 BETWEEN 800 AND 880" ' 返回并打开Recordset对象 set rs=conn.Execute(sSQL)
3.在命令对象的 Execute方法中使用SQL 创建 Connection对象并打开连接, 注意, Command对象没有可以用来建立连接的0pen方法 set conn=server. createob ject( adodb Connection) Provider=Microsoft. jet OLEDB 4.0: Data Source= conn ConnectionString=CS Server MapPath("rsgl mdb") conn. Open 创建 Command对象,使用 ActiveConnection属性 向 Command对象附加连接。 Set cmn= Server CreateObject("ADODB. Command") Set cmn ActiveConnection= conn 定义SQL查询 sSQL=" SELECT*FROM职工工资 WHERE实发工资 BETWEEN800AND 设置 Command对象的查询串 cmn CommandText SSQL 返回并打开 Recordset对象 set rs=cmn. Execute(,, 1)
3. 在命令对象的Execute方法中使用SQL ' 创建Connection对象并打开连接, ' 注意,Command对象没有可以用来建立连接的Open方法。 set conn=server.createobject("adodb.Connection") CS="Provider=Microsoft.jet.OLEDB.4.0;Data Source=" conn.ConnectionString=CS & Server.MapPath("rsgl.mdb") conn.Open ‘ 创建Command对象,使用ActiveConnection属性 ‘ 向Command对象附加连接。 Set cmn= Server.CreateObject("ADODB.Command") Set cmn.ActiveConnection = conn ' 定义SQL查询 sSQL = "SELECT * FROM 职工工资 WHERE 实发工资 BETWEEN 800 AND 880" ' 设置Command对象的查询串 cmn.CommandText = sSQL ' 返回并打开Recordset对象 set rs=cmn.Execute( , , 1)