0

我想使用 c 语言连接到 Oracle 数据库。为此,我使用 oOacle 预编译器,我的操作系统是 ubuntu 11.04。

我的代码是

 #include<stdlib.h>
 #include "/home/prasad/oracle/product/10.2.0/db_1/precomp/public/sqlca.h"
 int var1;
 EXEC SQL BEGIN DECLARE SECTION;
 VARCHAR ENAME[10];
 int dno;
 EXEC SQL END DECLARE SECTION;
 main()
 {
     EXEC SQL CONNECT :SCOTT IDENTIFIED BY :TIGER;
     printf("\nConnected to ORACLE as user: \n");

 }

我使用预编译器编译了它,但它给出了错误

PCC-F-02044,CMD-LINE:选项值非法或超出范围:ltype=long

问题是什么?

4

1 回答 1

0

由于错误指的是命令行并且ltype是一个命令行标志,这表明它可能没有像查看您的代码那样深入。

如果您没有在命令行上指定标志,请检查配置文件中的设置 - 横幅proc显示在消息中显示“系统默认选项值取自...”的位置。在你的情况下,我猜那将是/home/prasad/oracle/product/10.2.0/db_1/precomp/admin/pcscfg.cfg.

假设明确将其设置为long,您可以尝试仅添加ltype=short到您的proc命令中,如果可行,则可以在pcscfg.cfg文件中更改它以使以后的生活更轻松。如果这没有帮助,请将您的整个proc命令和该文件的内容添加到您的问题中。

据我所知,Ubuntu 不是 Oracle 支持的平台,所以这也有可能不起作用,尽管这似乎不太可能......

于 2012-12-05T17:06:04.403 回答