mfc通过ado链接oracle,MFC通过ADO连接Oracle数据库
首先在StdAfx.h头文件中加入#import "c:\program files\common files\system\ado\msado15.dll"\
no_namespace rename("EOF","adoEOF")
然后在App类的头文件中声名
public: _ConnectionPtr m_pConnection;//连接对象指针
接着在App类的InitInstance()函数中加入下列代码:
AfxOleInit();//初始化COM
try//连接数据库
{
m_pConnection.CreateInstance(__uuidof(Connection));
_bstr_t strConnect="Provider=MSDAORA.1;User ID='system';Password='renzh';Data Source=orcl;Persist Security Info=False;";
m_pConnection->Open(strConnect,"system","renzh",adModeUnknown);
}
catch(_com_error e)
{
AfxMessageBox(TEXT("数据库连接出错!"));
AfxMessageBox(e.Description());
}
在App类响应EXITINSTANCE的消息中也可以加上:
if (m_pConnection->State)
m_pConnection->Close();
m_pConnection->Release();
我认为也没有这一步的必要(我自己是没有加的)
然后数据库就打开了,在所有的类中都可以这样调用:theApp. m_pConnection->Execute((_bstr_t)sql,NULL,adCmdText);
然后在要访问记录集的地方声名一个记录集指针:
CString sql=_T("这里面是执行语句!!"):
_RecordsetPtr pRs("ADODB.RecordSet");
pRs->Open((_bstr_t)sql,_variant_t((IDispatch *)theApp.m_pConnection,true),adOpenStatic,adLockOptimistic,adCmdText);
if (!(pRs->adoBOF))//如果记录集不空
{
……
}
取出记录集信息可以用pRs-> GetCollect_r(_T("某个属性列名")));它的返回值是_variant_t,根据需要可以对它进行转换。如在ClistCtrl对象的插入中:
m_grd.SetItemText(0,0,(LPTSTR)(_bstr_t)(pRs-> GetCollect_r(_T("第一列的属性名"))));
mfc通过ado链接oracle,MFC通过ADO连接Oracle数据库相关推荐
- asp.netcore oracle,Asp.net core 3.1+EF Core2.2.6+Oracle.EntityFrameworkCore2.1.19连接Oracle数据库...
Asp.net Core 3.1+EF Core2.2.6+Oracle.EntityFrameworkCore2.1.19连接Oracle数据库 1.前言 本次主要采用Asp.net core3.1 ...
- asp连接oracle 服务端,Asp.net core 3.1+EF Core2.2.6+Oracle.EntityFrameworkCore2.1.19连接Oracle数据库...
Asp.net Core 3.1+EF Core2.2.6+Oracle.EntityFrameworkCore2.1.19连接Oracle数据库 1.前言 本次主要采用Asp.net core3.1 ...
- oracle 连接组件,[2021] node连接oracle数据库示例[使用oracle官方组件]
[2021] node连接oracle数据库示例[使用oracle官方组件] node 连接 oracle 示例 本示例采用的 oracledb 和 instantclient-basic-windo ...
- 【Exception】Navicat连接Oracle闪退 Navicat连接Oracle 报错:connection to server failed,probable Oracle Net admi
[Exception]Navicat连接Oracle闪退 Navicat连接Oracle 报错:connection to server failed,probable Oracle Net admi ...
- mysql和oracle共用服务器_如何用oracle 11g客户端 配置连接服务器数据库?同一台服务器上装MySQL和oracle会有冲突么...
在上一篇文章中,小编为您详细介绍了关于<模拟飞行10 咋设置多显示器10?>相关知识.本篇中小编将再为您讲解标题如何用oracle 11g客户端 配置连接服务器数据库?同一台服务器上装My ...
- 怎样用pb链接oracle数据库,oracle教程之pb连接oracle数据库
过ODBC或者PowerBuilder自带的DB PRofile或者专用接口连接上数据库,但仍然有许多使用者按此方法却无法连接上数据库,这方面的原因可能是PowerBuilder本身的原因,比如在安装 ...
- quicksearch连接oracle,dos命令下连接oracle数据库表
Oracle表空间文件损坏后的排查及解决 版权声明:本文为博主原创文章,未经博主允许不得转载.https://blog.csdn.net/zergskj/article/details/6303417 ...
- sqlserver往oracle写数据,Sqlserver连接oracle进行读写数据库
项目中用到sqlserver去连接oracle,通过sqlserver可以直接操作oracle. 1.安装oracle客户端软件,并配置: 1)打开Net Manager,新增服务名: 2)选择网络协 ...
- oracle数据库连接时报12514_连接Oracle数据库时报ORA-12541:TNS:无监听程序的图文解决教程...
在用PL/SQL Developer等客户端工具连接oracle服务器时出现ORA-12541:TNS:无监听程序的错误,如下图: 发现原来是oracle的监听没有启动,重启监听后就连接成功了,下面跟 ...
- oracle 12514 pl sql,plsql登陆oracle报错!连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的...
plsql登陆oracle出错!连接Oracle 10g时ORA-12514: TNS: 监听进程不能解析在连接描述符中给出的. 我添加了 (SID_DESC = (GLOBAL_DBNAME = ...
最新文章
- JavaWeb中连接数据库的一般方式与通过JNDI连接池的方式
- Android程序ToDoList增加配置项页面
- 上周热点回顾(10.27-11.2)
- Python-使用PyQT生成图形界面
- Python网络编程(OSI模型、网络协议、TCP)
- stl向量_用户定义大小的C ++ STL中的2D向量
- 微信第三方平台定时接收component_verify_ticket
- 【图像处理】MATLAB:直方图
- 随手笔记:我的架构师之路--沈剑 到家集团技术委员会主席快狗打车CTO
- 如果你身边有这样的人,赶紧让他说点什么,然后反过来买彩票
- 嵌入式linux寄存器位运算,嵌入式linux C语言(一)――位运算的使用
- 【ArcGIS操作】4 空间分析篇
- 第三届智能科学国际会议ICIS2018征稿北京大学11月2日-5日召开。附史忠植院士简历(公号发“智能科学国际会议”下载PDF)
- android root工具twrp,Android手机-全程解析最新Root通用方法
- UE4 蓝图接口 BluePrint Interface
- the connected probe appears to be a jlink clone
- 用C语言实现求最大公因数和最小公倍数
- axios 之 post请求参数格式不正确得问题
- 分析方法4---多维度拆解分析
- Android解决部分手机拍照照片自动旋转的问题