欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    2022年使用occi连接oracle的方 .pdf

    • 资源ID:33000602       资源大小:40.25KB        全文页数:6页
    • 资源格式: PDF        下载积分:4.3金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要4.3金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    2022年使用occi连接oracle的方 .pdf

    使用 occi 连接 oracle的方法 .txt爱一个人很难,恨一个人更难,又爱又恨的人最难。爱情永远不可能是天平,想在爱情里幸福就要舍得伤心!有些烦恼是我们凭空虚构的,而我们却把它当成真实去承受。使用occi连接 oracle的方法,不需要安装客户端/by rainfish from http:/ 1. 下载首先下载occi所需要的库:url=http:/ 下载 linux版本。然后下载occi 所需要的头文件:即instantclient-sdk http:/ . inux32-11.2.0.1.zip 解压后里面有所需要的头文件,主要是occi.h 2. 将 occi所需库拷贝到 /usr/local/lib/ 然后:ln -s libocci.so libocci.so.11.1 ln -s libclntsh.so.11.1 libclntsh.so 3. 示例,根据互联网修改的/oracle2.cpp #include #include #include #include #include #include #include #include #include #include using namespace oracle:cci; class dbAccessor public: dbAccessor(); dbAccessor(); int get_dbstat(); bool Connect_DB(); void Disconn_DB(); bool ExecuteUpdate(const char* sql); ResultSet* ExecuteQuery(const char* sql); void ClearQuery(ResultSet* set); void Init(const char* dbName,const char* dbUser,const char* dbPass); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 6 页 - - - - - - - - - void SetDate(unsigned int paramIndex, time_t timeVal); private: Environment* m_env; Connection* m_conn; Statement* m_stmt; const char *m_szUser; const char *m_szPassword; const char *m_szDbName; bool bConnected; ; using namespace std; using namespace oracle:cci; dbAccessor:dbAccessor() bConnected=false; m_env=0; m_conn=0; m_stmt=0; dbAccessor:dbAccessor() Disconn_DB(); void dbAccessor:Init(const char* dbName,const char* dbUser,const char* dbPass) m_szDbName = dbName; m_szUser = dbUser; m_szPassword = dbPass; bool dbAccessor:Connect_DB() if(m_env =0) m_env = Environment:createEnvironment(); if(m_conn=0) try m_conn=m_env-createConnection(m_szUser,m_szPassword,m_szDbName); catch (SQLException& ex) m_conn = 0; cout connect to database failed: ex.getMessage() terminateStatement(m_stmt); if(m_conn!=0 & m_env!=0) m_env-terminateConnection(m_conn); / 执行数据库更新操作,包括insert、update 、delete操作bool dbAccessor:ExecuteUpdate(const char* sql) bool update_OK = true; if(sql=0) exit(1); if(m_conn=0&m_env=0) exit(1); try m_stmt=m_conn-createStatement(sql); catch (SQLException& ex) m_stmt = NULL; cout ExecuteUpdate failed: ex.getMessage() executeUpdate(); return update_OK; / 执行数据库查询操作,即select操作ResultSet* dbAccessor:ExecuteQuery(const char* sql) ResultSet* set=0; if(sql=0) exit(1); if(m_conn=0&m_env=0) exit(1); try m_stmt=m_conn-createStatement(sql); catch (SQLException& ex) m_stmt = NULL; 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 6 页 - - - - - - - - - cout ExecuteQuery failed: ex.getMessage() executeQuery(); return set; void dbAccessor:ClearQuery(ResultSet* set) if(m_stmt=0) exit(1); if(set=0) exit(1); m_stmt-closeResultSet(set); void dbAccessor:SetDate(unsigned int paramIndex, time_t timeVal) couttimeValcreateStatement(); assert(m_stmt != NULL); tm* timeStruct = localtime(&timeVal); Date date(m_env, timeStruct-tm_year + 1900, timeStruct-tm_mon + 1, timeStruct-tm_mday, timeStruct-tm_hour, timeStruct-tm_min, (timeStruct-tm_sec = 60) ? 0 : timeStruct-tm_sec); m_stmt-setDate(paramIndex, date); int main(void) dbAccessor obj; obj.Init(10.1.99.200:1521/orcl,gist,gist; bool conn = obj.Connect_DB(); if(!conn) perror(obj.Connect_DB()n; exit(1); 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 6 页 - - - - - - - - - else printf(obj.Connect_DB() OKn; /* / 1、插入数据库操作string sql = insert into EMAIL0(emailid,checkintime,clientip,clientport,serverip,serverport,capturetime,type,username,password,sendaddress,receiveaddress,subject,ccaddress) ; sql += values(1238673850,to_date(04-3-2009,MM-DD-YYYY),127.0.0.1,4327,serverip,110,to_date(04-3-2009,MM-DD-YYYY),1,user,pass,sendaddress,receiveaddress,subject,ccaddress); obj.ExecuteUpdate(sql.c_str(); / 2、查询数据库操作sql = select emailid,to_char(checkintime,YYYY-MM-DD HH24:MI:SS),clientip from EMAIL0; / 第一列 emailid:Int型;第二列checkintime:Date 类型,转换为字符串类型输出;第三列 clientip:string字符串类型ResultSet* set=obj.ExecuteQuery(sql.c_str(); while(set-next() cout getInt(1) endl; /获取第一列值,int类型 cout getString(2) endl; /获取第二列值,date 类型转换成了字符串类型 cout getString(3) endl; /获取第三列值,string类型 obj.ClearQuery(set); */ return 0; /makefile CC = g+ PROGS = oracle1 oracle2 INCL_PATH = -I/opt/tools/occi/include CFLAGS = -g -Wall -Wno-deprecated $INCL_PATH LIBS = -locci -lclntsh 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 5 页,共 6 页 - - - - - - - - - CLEANFILES = core core.* *.core *.o temp.* *.out typescript* *.lc *.lh *.bsdi *.sparc *.uw all: $PROGS oracle1: oracle1.o $CC $CFLAGS -o $ oracle1.o $LIBS oracle2: oracle2.o $CC $CFLAGS -o $ oracle2.o $LIBS .cpp.o: $(CC) $(CFLAGS) -o $ -c $ clean: rm -f $PROGS $CLEANFILES 名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 6 页,共 6 页 - - - - - - - - -

    注意事项

    本文(2022年使用occi连接oracle的方 .pdf)为本站会员(C****o)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开