proc編譯提示沒有建立游標

2021-09-27 11:38:50 字數 2099 閱讀 3078

proc 提示沒有建立游標

linux提示

*

*[oracle@redhat orcl_test]$ make m=

07_cursor

proc 07_cursor.pc

pro*c/c++

: release 11.2

.0.1

.0- production on thu sep 2608:

36:462019

1982

,2009

, oracle and

/system default option values taken from:

/u01/oracle//product//precomp/admin/pcscfg.cfg

semantic error at line 40

, column 18

, file 07_cursor.pc:

exec sql open dept_cursor;..

....

....

....

...1pcc-s-

02334

, sql identifier was not declared as a cursor*

*

.pc檔案

#include

#include

#include

typedef

char dnametype[20]

;// dnametype型別

exec sql begin declare section;

char

*serverid =

"scott/11@orcl";

exec sql type dnametype is string(20

);//向proc 編譯器註冊

int deptno;

dnametype dname;

dnametype loc;

short loc_ind;

exec sql end declare section;

void

sqlerr

(void

)int

main()

printf

("%d\t%s\t%s\n"

, deptno, dname, loc);}

//關閉游標

exec sql close dept_cursor;

exec sql commit release;

return0;

}

更改之後的.pc檔案

#include

#include

#include

typedef

char dnametype[20]

;// dnametype型別

exec sql begin declare section;

char

*serverid =

"scott/11@orcl";

exec sql type dnametype is string(20

);//向proc 編譯器註冊

int deptno;

dnametype dname;

dnametype loc;

short loc_ind;

exec sql end declare section;

void

sqlerr

(void

)int

main()

printf

("%d\t%s\t%s\n"

, deptno, dname, loc);}

exec sql close dept_cursor;

exec sql commit release;

return0;

}

linux提示沒有建立游標,可是我的確建立了,試了很多方法,最後發現把注釋給刪了,編譯能通過。

雖然不知道為什麼在**後加注釋不會影響編譯,而在單獨一行加注釋會影響編譯,不過總算解決了這個問題。

pro C初學1 編譯環境

pro c 把過程化語言c和非過程化語言sql最完善地結合起來,具有完備的過程處理能力,又能完成任何資料庫的處理品任務,使使用者可以通過程式設計完成各種型別的報表。在pro c程式中可以嵌入sql語言,利用這些sql語言可以完成動態地建立 修改和刪除資料庫中的表,也可以查詢 插入 修改和刪除資料庫表...

Windows下GCC工具編譯Proc程式

windows下gcc工具使用mingw作為編譯工具,可以在editplus裡面配置編譯工具 只要將如下命令配置到editplus的配置工具中就可以用gcc編譯proc檔案了 proc parse none iname main.pc proc編譯後生成main.c檔案,再使用gcc對其進行編譯得到...

關於pro c編譯時報PCC S 02015

系統移植時,用makefile編譯pc檔案時,出現如下錯誤 pcc s 02015,unable to open include file error at line 25,column 10 in file usr include alloca.h pcc s 02015,unable to op...