Pro*c源程序中使用宿主结构保存查询结果
来源:互联网 发布:q语言 知乎 编辑:程序博客网 时间:2024/05/19 23:55
开发环境:VC6 + XP + Oracle10
Pro*c源程序如下:
/*功能:演示了在pro*c源程序中使用结构体(宿主结构)来保存查询结果使用宿主结构的注意事项1. 结构成员的数据类型、顺序必须与内嵌SQL语句中列的数据类型和顺序匹配2. 宿主结构与PL/SQL的记录类型(RECORD)非常类似。但注意,在开发内嵌PL/SQL程序时不能将宿主结构作为PL/SQL记录变量的宿主变量3. 不能使用嵌套的宿主结构4. 不能使用C联合(union)作为宿主结构,也不能在宿主结构中嵌套联合。*/#include <stdio.h>#include <string.h>#include <stdlib.h>#include <sqlca.h>int connect();void sql();void sql_error();void main(){EXEC SQL WHENEVER SQLERROR DO sql_error();if(connect() == 0){sql();EXEC SQL COMMIT RELEASE;}elseprintf("连接失败\n");}int connect()// connect to oracle database{char username[10], password[10], server[10];strcpy(username, "llp");strcpy(password, "llp");strcpy(server, "ORAL");EXEC SQL CONNECT :username IDENTIFIED BY :password USING :server;if(sqlca.sqlcode == 0)return 0;elsereturn sqlca.sqlcode;}void sql_error()// print error infomation{printf("%.*s\n", sqlca.sqlerrm.sqlerrml, sqlca.sqlerrm.sqlerrmc);}void sql()// 执行SQL语句{char iname[10];struct// 定义结构体及变量{char name[10];float salary;}emp_record;printf("请输入iname: ");gets(iname);// 接收name的输入fflush(stdin);EXEC SQL Select name, salary into :emp_record from PLSQLTEST where name=:iname;printf("name = %s, salary = %.f\n", emp_record.name, emp_record.salary);}
对应的表结构为:
create table PLSQLTEST( SALARY NUMBER, NAME VARCHAR2(10))
表中数据如截图:
- Pro*c源程序中使用宿主结构保存查询结果
- 从一个C语言源程序文件中,统计出该C程序中使用的关键字及其频率。统计结果表格保存到文件中
- 从一个C语言源程序文件中,统计出该C程序中使用的关键字及其频率。统计结果表格保存到文件keyword.txt中。
- 保存查询结果到Excel表格中
- pro*c宿主变量和指示变量
- 如何将Select查询结果保存到EXCEL中
- Oracle将查询结果保存到文本txt中
- 将mysql的查询结果保存到文件中
- Pro*C中滚动游标的使用
- Pro*C中使用游标变量
- Pro*C中CLOB的使用
- 查询中使用CASE结构
- C语言源程序的结构特点(笔记)
- oracle查询所有所有的表结构及字段描述等信息并plsql保存查询结果
- Pro*C的使用
- Pro * C 的使用
- Pro * C 的使用
- Pro*C的使用
- android 获取坐标
- PopupWindow学习总结
- extremeQoS限速
- 2011年软考系统架构设计师学习笔记第十三章
- iphone直播的实现
- Pro*c源程序中使用宿主结构保存查询结果
- Android中的XML文件的作用介绍
- C语言编译全过程
- Java Thread 多线程 线程池
- Linux Socket通信 C/S模型
- GNU C 扩展之__attribute__ 机制简介
- 2011年软考系统架构设计师学习笔记第十四章(完)
- jQuery 下拉菜单操作总结
- Java Thread 多线程 操作线程