2022年C操作ORACLE数据库 .pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《2022年C操作ORACLE数据库 .pdf》由会员分享,可在线阅读,更多相关《2022年C操作ORACLE数据库 .pdf(10页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、数据库操作方式 :可以采用 ADO 方式,也可以采用oracle 本身提供的 Proc*C/C+ 或者是 OCCI方式操作数据库。连接方式 :可以是客户端连接、也可以是服务器端连接。数据库配置 :无论是何种连接都需要进行数据库连接的配置,一般在 ORACLE_HOME下面的 network/admin/tnsnames.ora文件中进行配置,如果没有此目录或者是此文件, 需要自己手工添加。 内容格式大致如下:点击(此处 )折叠或打开1.BM2D0 =2.(DESCRIPTION=3.(ADDRESS_LIST=4.(ADDRESS = (PROTOCOL = TCP)(HOST = XXX.X
2、XX.XXX.XXX )( PORT = 1521)5.)6.(CONNECT_DATA=7.(SERVICE_NAME = BM2D0)8.)9.)其中橄榄色可任意起名,一般在数据库连接是作为服务和用户名、密码一起确定数据库连接的参数。第一个鲜粉色是远程oracle数据库所在服务器的IP 地址,端口号一般为 1521。第二个鲜粉色是远程oracle所在主机的全局数据库名字,不能随意更改。后两个搭配起来能够确定唯一连接对象。客户端连接:方式一: ADOmain.cpp名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理
3、- - - - - - - 第 1 页,共 10 页 - - - - - - - - - 点击(此处 )折叠或打开1.#includeDBOperation.h2.#include3.usingnamespacestd ;4.5.voidmain ()6.7.CDBOperationdbOper ;8.boolbConn= dbOper . ConnToDB( Provider=OraOLEDB.Oracle.1;PersistSecurityInfo=True;DataSource=xxx1,xxx2,xxx3);9.if( false= bConn)10.11.printf( 连接数据库出
4、现错误n );12.system ( PAUSE );13.return;14.15.16._RecordsetPtrpRst ;17.18./ 执行查询语句19./ char* sql= select* fromTSTUDENT;20.charsql 255 = 0;21.strcpy( sql ,select* fromTSTUDENT);22.pRst= dbOper . ExecuteWithResSQL( sql );23.if( NULL = pRst )24.25.printf( 查询数据出现错误!n );26.system ( PAUSE );27.return;28.29.i
5、f( pRst - adoEOF)30.31.pRst - Close ();32.printf( Thereisno recordsinthistablen);33.return;34.35._variant_tvSno ,vName,v* ,vAge ,vDno,vDname,vCname;36.while(! pRst - adoEOF)37.38./ pRst - MoveFirst();/ 记录集指针移动到查询结果集的前面39.vSno = pRst - GetCollect( _variant_t( long ) 0);40.vName = pRst - GetCollect( _
6、variant_t( name );41.v*= pRst - GetCollect( _variant_t( *);42.vAge = pRst - GetCollect( _variant_t( age );名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 10 页 - - - - - - - - - 43./ vDno = pRst - GetCollect( dno );44./ vDname = pRst - GetCollect( dname );45./ vC
7、name = pRst - GetCollect( cname );46.47.printf( %st%st%st%dn,( LPSTR)( LPCSTR )( _bstr_t) vSno ,( LPSTR)( LPCSTR) _bstr_t( vName),( LPSTR)( LPCSTR) _bstr_t( v* ),vAge . intVal);48.pRst - MoveNext ();49.50.51./ 执行插入语句52./ sprintf( sql ,insertintoTSTUDENT(sno,name,*,age)values(%s,%s,%s,%d) ,20080016,全
8、局 , 女,25);53.strcpy( sql ,insertintoTSTUDENT(sno,name,*,age)values(20080001, 全局 , 女,25) );54.pRst= dbOper . ExecuteWithResSQL( sql );55.if( NULL !=pRst )56.57.printf( 插入数据成功 n );58.59./ 执行删除语句60.61.sprintf( sql ,deletefromTSTUDENT wheresno= %s,20080017);62.pRst= dbOper . ExecuteWithResSQL( sql );63.
9、if( NULL !=pRst )64.65.printf( 删除数据成功 n );66.67.system ( PAUSE );68./ pRst - Close ();69.其中 XXX1 :是 tnsnames.ora 中配置的服务名, XXX2是用户名, XXX3是密码。DBOperation.h:点击(此处 )折叠或打开1.#pragmaonce2.#importc:programfilescommonfilessystemadomsado15.dllno_namespacerename ( EOF ,adoEOF )名师资料总结 - - -精品资料欢迎下载 - - - - - -
10、- - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 10 页 - - - - - - - - - 3.classCDBOperation4.5.public:6./ 初始化数据库操作需要的对象7.CDBOperation( void );8.CDBOperation( void );9./ 连接至数据库10.boolConnToDB( char* ConnectionString,char* UserID ,char*Password );11.12./ 数据库操作函数13./ 查询操作删除以及添加14._RecordsetPtrExecu
11、teWithResSQL( constchar*);15./ boolExecuteNoResSQL ( constchar*);/deleteand add16.17.private:18.voidPrintErrorInfo( _com_error&);19.20.private:21./ 初始化数据库连接、命令、记录集22._ConnectionPtrCreateConnPtr();23._CommandPtrCreateCommPtr();24._RecordsetPtrCreateRecsetPtr();25.26.private:27./ 数据库连接需要的连接、命令操作对象28._
12、ConnectionPtrm_pConnection;29._CommandPtrm_pCommand ;30.;DBOperation.cpp点击(此处 )折叠或打开1.#includeDBOperation.h2.3.CDBOperation: CDBOperation( void )4.5.CoInitialize( NULL);6.m_pConnection= CreateConnPtr();7.m_pCommand = CreateCommPtr();8.9.10.CDBOperation: CDBOperation( void )11.名师资料总结 - - -精品资料欢迎下载 -
13、- - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 10 页 - - - - - - - - - 12./ m_pCommand - Close ();13.m_pConnection- Close ();14.15.16.boolCDBOperation: ConnToDB( char* ConnectionString,char*UserID ,char* Password )17.18.if( NULL = m_pConnection)19.20.printf( Failedtocreateconnectionn)
14、;21.returnfalse;22.23.24.try25.26.HRESULT hr= m_pConnection- Open( ConnectionString,UserID ,Password,NULL);27.if( TRUE = FAILED ( hr )28.29.returnfalse;30.31.m_pCommand - ActiveConnection= m_pConnection;32.returntrue;33.34.catch ( _com_error&e)35.36.PrintErrorInfo( e);37.returnfalse;38.39.40.41._Rec
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 2022年C操作ORACLE数据库 2022 操作 ORACLE 数据库
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内