+ -
当前位置:首页 → 问答吧 → ORACLE使用结构体编译PROC的问题

ORACLE使用结构体编译PROC的问题

时间:2010-08-16

来源:互联网

我在头文件里定义如下
aaa.h文件如下
EXEC SQL BEGIN DECLARE SECTION;
typedef struct _abc
{
    char a[10];
    char b[10];
    char c[10];
}stAbc;
EXEC SQL END DECLARE SECTION;

aaa.pc文件如下:
.......
EXEC SQL INCLUDE "aaa.h";
EXEC SQL INCLUDE SQLCA;

int func()
{
     EXEC SQL BEGIN DECLARE SECTION;
      stAbc  aa;
     EXEC SQL END DECLARE SECTION;
  
    .........
}
编译如下:
proc DEFINE=_LARGEFILE64_SOURCE INCLUDE=-I/home/zhd/include sqlcheck=SYNTAX  DEF_SQLCODE=YES PARSE=none iname=aaa.pc oname=aaa.c
我在编译的时候为什么老报错呢
Error at line 15, column 1 in file aaa.pc
EXEC SQL include "aaa.h";
1
PCC-S-02015, unable to open include file

虽然报错了。但是还是可以生成aaa.c的。
接着用cc编译aaa.c的时候如下:
cc -D_LARGEFILE64_SOURCE -g  -I/home/zhd/include -I. -I/opt/oracle/product/9.2.0/include  -c aaa.c
aaa.c:158: syntax error before "SQL"


请问大家如何使用这个结构体呢。求救啊。项目开发等着着急。。5555.谢谢大家啊。

作者: powaer   发布时间: 2010-08-16

查看了很多类似的问题。大家很多人都有类似这样的问题的。

作者: powaer   发布时间: 2010-08-16

兄弟  不要定义在头文件,只能定义在.pc文件。 这个PROC真恶心

作者: UCfree   发布时间: 2010-08-16

还有人在用proc开发呢。

作者: renxiao2003   发布时间: 2010-08-16