为了更好的判断和查找错误以修改程序,所以在每次执行完 SQL 语句后都应
该对 sqlca 所返回的状态值加以判断。若 sqlcode 等于 0,则输出建立成功信
息,否则报错。
4) 执行查询:
在这里嵌入 SQL 的查询语句 EXEC SQL select EmployeeID INTO :EmployeeID
from orders where OrderID = 345 ,并通过主变量 EmployeeID 返回查询到的结
果,打印结果。
5) 断开所有连接:
执行完所有的数据库的访问后,断开所有的连接以释放系统资源。语法为:
EXEC SQL DISCONNECT ALL;
数据结构:
主要为在数据库中存储的表,及针对表进行的查找。
2. 对程序 esql.sqc 作适当的修改,使之可以在本地系统上可以运行。进行预处理、
编译、连接(lib 连接),查看运行结果。
1)修改:
只需要对连接的服务器及数据库进行修改即可:
EXEC SQL CONNECT TO SKY.pubs USER abc.abc;
同时由于 pubs 数据库中没有 orders 表,所以对 SELECT 语句也作了修改如下:
EXEC SQL select emp_id INTO :EmployeeID from employee where
lname = 'Accorti';
2)进行预处理:
将 esql.sqc 文 件 放 在 C:\Program Files\Microsoft SQL Server\MSSQL\
Binn 目 录 下 , 运 行 cmd , 进 入 C:\Program Files\Microsoft SQL Server\
MSSQL\Binn 目录,用 nsqlprep esql.sqc 的方式运行该文件,可以在 C:\Program
Files\Microsoft SQL Server\MSSQL\Binn 中找到预编译后生成的.c 文件。
运行过程显示如下:
3)连接操作已经在前面的初始化环境过程中完成。运行结果如下:不知为什么,在
黄伟的机子上运行时,不管怎么换查询条件,结果总是 0
但是在田超的机子上运行的时候,就能够得出正确结果。田超查询的是 Northwind