Linux-环境下Oracle-PRO-C程序的编写简单范例_第1页
Linux-环境下Oracle-PRO-C程序的编写简单范例_第2页
Linux-环境下Oracle-PRO-C程序的编写简单范例_第3页
Linux-环境下Oracle-PRO-C程序的编写简单范例_第4页
免费预览已结束,剩余1页可下载查看

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Linux环境下PRO*C程序的编写简单例Oracle数抵库版本10. 2.1.0Linux 版本 Red Hat Enterpr ise AS3环境介绍:oracle数据库和服务均安装到linux主机上一.oracle用户的环境变量设置如下:oracleguohui6 oracle$ cat bash_profile# bash_profi le# Get the a I i ases and functionsif -f /bashrc ; then / bashrcfi# User specific envi ronment and startup programsORACLE_BASE

2、=/mydataf i Ie2/app/oracIe; export ORACLE_BASE0RACLE_SID二ORCL;export ORACLE_SID#ORACLE_SID二AUXY;export ORACLE.SIDORACLE_HOME=$ORACLE_BASE/oracIe/product/10. 2. 0/db_1;export ORACLE.HOME PATH=$PATH:$HOME/b i n:$ORACLE_HOME/b i n; export PATHLD_LIBRARY_PATH二$ORACLE_HOME/Iib:/usr/lib:/usr/local/lib; ex

3、port LD_LIBRARY_PATHNLS_LANG=amer i can_amer ica. ZHS16GBK;export NLS_LANG export PATHunset USERNAMEoracleguohui6 oracle$二.查看oracle用户的登录环境:oracIeguohui6 oracle$ iduid=501 (oracle) gid=501 (oinsta11) groups=501 (oinstaII), 502(dba) oracleguohui6 oracle$ envREM0TEH0ST=192. 169. 1.7HOSTNAME=guohui 6SHE

4、LL=/bin/bashTERM二vt100HISTSIZE=1000NLS_LANG=amer i can_amer ica. ZHS16GBKQTDIR=/usr/lib/qt-3. 10LDPWD=/home/oracIe/backuprestor101/proc_code页脚USER=oracleLD_LIBRARY_PATH=/mydataf iIe2/app/oracIe/oracIe/product/10. 2. 0/db_1/lib:/usr/l ib :/usr/local/l ibLS_C0L0RS=no=00:fi=00:di=01;34:ln=01;36:pi=40;3

5、3:so=01;35:bd=40;33;01:cd=40;33; 01:or=01;05;37;41:mi=01;05;37;41:ex=01;32:*. cmd=01;32:*. exe=01;32:*. =01;32:*. bt m=01;32:* bat=01;32:* sh=01;32:* csh=01;32:* tar=01;31:* tgz=01;31:* arj=01;31: *. taz=01;31:* Izh=01;31:* zip=01;31:* z=01;31:* Z=01;31:* gz=01;31:* bz2=01;31: *. bz=01;31tz=01;31rpm

6、=01;31cpio=01;31:*. jpg=01;35:*. gif=01;35:*. bmp=01 ;35:*. xbm=01;35:*. xpm=01;35:png=01;35:t i f=01;35:ORACLE.SID二ORCLORACLE_BASE=/mydatafi Ie2/app/oracleMAIL=/var/spool/mai I/oraclePATH二/usr/kerberos/bi n:/usr/1 ocal/bin:/bin:/usr/b in:/usr/X11R6/bin:/home/oracle /bin:/mydataf iIe2/app/oracIe/ora

7、cIe/product/10. 2. 0/db_1/binINPUTRC=/etc/inputrcPWD二/home/oracIeLANG二en_US UTF-8LAMHELPFILE=/etc/lam/Iam-heIpfiIeSSH_ASKPASS=/us r/1i bexec/openssh/gnome-ssh-askpassSHLVL=1HOME二/home/oracIeLOGNAME=oracIeLESSOPEN=|/usr/b i n/1essp i pe. sh %sORACLE_HOME=/mydataf i Ie2/app/oracIe/oracIe/product/10. 2

8、. 0/db_1 G_BR0KEN_FILENAMES=1_=/b i n/envoracIeguohui6 oracle$注意:LD_LI BRARY_PATH变量的设莊,PATH环境变量的设饪PATH=/usr/kerberos/bin:/usr/Iocal/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/oracIe/bin:/mydatafiIe2/app/or acle/oracle/product/10. 2. 0/db_1/bi nLD_LIBRARY_PATH=/mydataf iIe2/app/oracIe/oracIe/product/10.

9、2. 0/db_1/lib:/usr/lib:/usr/local/lib如果设莊得不对,将无确的调用proc预编译工具,也无确的proc预编译需妥使用的头文件。确保数据库连接和tnsnames. ora, I istener. ora丈件的正确配j。(这里就不再多说了!) 代码oracleguohui6 oracle$ sqlplus scott/tigerorclSQL*Plus: Release 10. 2. 0. 1.0 一 Production on Mon Jul 5 01:16:36 2010页脚Copyr ight (c) 1982, 2005, Oracle. Al I r

10、ights reserved.Connected to:Oracle Database 10g Enterpr i se Edition Release 10. 2. 0.1.0 - ProductionWith the Partitioning, OLAP and Data Mining optionsSQL我们将用scott用户对数据库进行连接并查找表里面的数据。代码main, pc如下代码#include #i ncIudestr i ngh #include #inc Iude int main(intargc, char* argv)EXEC SQL BEGIN DECLARE SE

11、CT I ON;char *uid = Hscott/1igerORCL;long user id=0;char username51=;EXEC SQL VAR username IS STRING(51);EXEC SQL END DECLARE SECTION;EXEC SQL CONNECT :uid;if (sqlca.sqlcode = 0)pr i rrtf (Mconnect sucess! nM);pr i ntf (connect fail!rT);EXEC SQL DECLARE cur_user CURSOR FOR SELECT DEPTNO, DNAME FROM

12、DEPT;EXEC SQL OPEN cur_user;whi le(1) user id=0;strcpy (username,”);EXEC SQL FETCH cur_user INTO :user id, :username; if( sqlca.sqlcode = 1403) break;页脚pr intf(user id二Id, username二sn,user id,username);EXEC SQL CLOSE cur_user;/ EXEC SQL COMM IT WORK RELEASE;EXEC SQL ROLLBACK WORK RELEASE;return 0;这里

13、用scott用户对数据库发起连接,并查询dept表中的数据并打印出来。第一步:预編译代码oracleguohui6 proc_code$ proc ma in. pcPro*C/C+: Release 10. 2. 0. 1.0 - Product ion on Mon Jul 5 01:27:37 2010Copyr ight (c) 1982, 2005, Oracle. Al I r ights reserved.SystemdefauItoptionvaluestakenfrom:/mydatafi Ie2/app/oracle/oracle/product/10 2. 0/db_1/

14、precomp/admin/pcscfg cfgoracleguohui6 proc_code$第二步:编译预编译生成的文件main.coracleguohui6 proccodeS gcc -o tespproc main, c -I $0RACLE_H0ME/precomp/public -L $ORACLE_HOME/1ib -I clntshoracleguohui6 proc_code$渕试执行代码oracleguohui6 proc_code$ /tespprocconnect sucess!页脚 user i d=50, username二SUPPORT user id=10, username=ACCOUNTI NG user i d=20, username二RESEARCH user id=30,username二SALESuser i

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

最新文档

评论

0/150

提交评论