第十二章 使用嵌入式SQL(二)
嵌入式SQL代码
简单的SQL语句
可以将简单的SQL语句(单个嵌入式SQL语句)用于各种操作,包括:
INSERT,UPDATE,INSERT OR UPDATE和DELETE语句。- `DDL语句。
GRANT和REVOKE语句。- 只返回一行的
SELECT语句(或者如果只对返回的第一行感兴趣)。
简单的SQL语句也被称为非基于游标的SQL语句。本章稍后将介绍基于游标的嵌入式SQL。
例如,以下语句查找ID为43的(唯一的)患者的姓名:
&sql(SELECT Name INTO :name
FROM Patient
WHERE %ID = 43)
如果对可以返回多行的查询使用简单语句,则只返回第一行:
&sql(SELECT Name INTO :name
FROM Patient
WHERE Age = 43)
根据查询的不同,不能保证哪一行将首先被返回。此外,如果一个查询包含一个INTO语句,并且该表不包含任何数据(SQLCODE=100),执行该查询将导致未定义(空)的输出主机变量。因此,在访问输出主机变量之前,所有简单嵌入式SQL语句都应该测试SQLCODE=0。
