我遇到这样一个问题,就是在我的.pc文件中加入了自己定义的头文件,如:
#include "My.h"
这个头文件中,定义了许多我需要结构体,假设My.h下定义有这样一个结构体
typedef struct
{
int Id ;
char DateTime[10];
}MY_PR;
而我在.pc 中使用自己定义头文件中的结构体时, 使用方法如下:
int MyWork(MY_PR *temp)
{
....
EXEC SQL AT db_name
SELECT ID, Date_Time
INTO :temp->Id, :temp->DateTime
FROM xxx;/* 表名*/
却提示我 illegal structure reference operation各位大侠,这到底是什么原因呢,需要配置什么东西吗,谢谢啦
#include "My.h"
这个头文件中,定义了许多我需要结构体,假设My.h下定义有这样一个结构体
typedef struct
{
int Id ;
char DateTime[10];
}MY_PR;
而我在.pc 中使用自己定义头文件中的结构体时, 使用方法如下:
int MyWork(MY_PR *temp)
{
....
EXEC SQL AT db_name
SELECT ID, Date_Time
INTO :temp->Id, :temp->DateTime
FROM xxx;/* 表名*/
却提示我 illegal structure reference operation各位大侠,这到底是什么原因呢,需要配置什么东西吗,谢谢啦
解决方案 »
- 求一个查询Oracle重复记录的SQL语句
- 大家好,如果程序中已执行sql语句,现在正在从结果集中Fetch,在ORACLE中可以看到记录吗
- STAR_TRANSFORMATION_ENABLED如何设置
- 关于提示信息的问题
- 请问一个ORACLE安装问题!!!
- 在Command Window下怎么样执行一个存储过程?
- 怪异客户:如何在WinMe下安装Oracle8的客户端?
- 安装stackspace的错误!
- 这句 SQL 语句该怎么样写呢? 急 在线等待!
- ****安装ORACLE8奇怪的问题,请高手指教,在线等待!!!!!!!!
- ORA-06502: PL/SQL: 数字或值错误 : 字符串缓冲区太小 的问题
- oracle中如何取时间最晚的那笔数据?
#include "My.h" <=== 将头文件包含放在SQL声明中
EXEC SQL END DECLARE SECTION;int MyWork( temp )
EXEC SQL BEGIN DECLARE SECTION;
MY_PR *temp; <=== 参数声明也需要放在SQL声明中,因为你在下面的SQL语句中使用到该参数
EXEC SQL END DECLARE SECTION;{
...
EXEC SQL //AT db_name <== 不知道什么东西,暂时注释掉
SELECT ID, Date_Time
INTO :temp->Id, :temp->DateTime
FROM xxx;
...
}已经编译通过,楼主看看吧