8.1嵌入式SQL 81.1嵌入式SQL的处理过程 812嵌入式SQL语句与主语言之间的通信 81.3不使用游标的SQL语句 814使用游标的SQL语句 815动态SQL 816小结 An Introduction to Database System
An Introduction to Database System 8.1 嵌入式SQL 8.1.1 嵌入式SQL的处理过程 8.1.2 嵌入式SQL语句与主语言之间的通信 8.1.3 不使用游标的SQL语句 8.1.4 使用游标的SQL语句 8.1.5 动态SQL 8.1.6 小结
813不用游标的SQL语句 不用游标的SQL语句的种类 说明性语句 数据定义语句 数据控制语句 查询结果为单记录的 SELECT语句 非 CURRENT形式的增删改语句 An Introduction to Database System
An Introduction to Database System 8.1.3 不用游标的SQL语句 ❖不用游标的SQL语句的种类 ▪ 说明性语句 ▪ 数据定义语句 ▪ 数据控制语句 ▪ 查询结果为单记录的SELECT语句 ▪ 非CURRENT形式的增删改语句
不用游标的SQL语句(续) 今一、查询结果为单记录的 SELECT语句 非 CURRENT形式的增删改语句 An Introduction to Database System
An Introduction to Database System 不用游标的SQL语句(续) ❖一、查询结果为单记录的SELECT语句 ❖二、非CURRENT形式的增删改语句
、查询结果为单记录的 SELECT语句 这类语句不需要使用游标,只需要用INTO子句指 定存放查询结果的主变量 [例2]根据学生号码査询学生信息。假设已经把要查询的学生 的学号赋给了主变量 gIvens EXEC SQL SELECT Sno, Sname, Ssex, Sage, Sdept INTO Hsno, Hname,: Hsex, Hage, Dept FROM Student WHERE Sno=: givensno; An Introduction to Database System
An Introduction to Database System 一、查询结果为单记录的SELECT语句 ❖这类语句不需要使用游标,只需要用INTO子句指 定存放查询结果的主变量 [例2] 根据学生号码查询学生信息。假设已经把要查询的学生 的学号赋给了主变量givensno。 EXEC SQL SELECT Sno,Sname,Ssex,Sage,Sdept INTO :Hsno, : Hname ,:Hsex,:Hage,:Hdept FROM Student WHERE Sno=:givensno;
查询结果为单记录的 SELECT语句(续)( (1)|NTO子句、 WHERE子句和 HAVING短语的条件表 达式中均可以使用主变量 (2)查询返回的记录中,可能某些列为空值NULL。 (3)如果查询结果实际上并不是单条记录,而是多条 记录,则程序出错, RDBMS会在 SQLCA中返回错 误信息 An Introduction to Database System
An Introduction to Database System 查询结果为单记录的SELECT语句(续) (1) INTO子句、WHERE子句和HAVING短语的条件表 达式中均可以使用主变量 (2)查询返回的记录中,可能某些列为空值NULL。 (3) 如果查询结果实际上并不是单条记录,而是多条 记录,则程序出错,RDBMS会在SQLCA中返回错 误信息