oracle 连接数据库的问题

jin987 2003-10-01 03:30:33
现在用vc连接orcle数据库一般用什么方法?odbc?dao?ado?oracle的连接和ms_sqlserver 一样吗?
...全文
34 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
Skt32 2003-10-03
  • 打赏
  • 举报
回复
使用ADO封装类的数据库程序开发实例[第二版] 详细信息 < ADO >

作者对ADO进行封装并演示了它的使用

[代码性质] VC完整应用程序代码
[代码作者] 成真
[文件大小] 390K
[更新日期] 2003-5-12 19:42:00
[下载次数] 5880

http://www.vckbase.com/code/relateddoc.asp?id=1926
Skt32 2003-10-03
  • 打赏
  • 举报
回复
Oracle OCI API封装类 详细信息 < Oracle >

使用Oracle7.3 8.0 OCI API 实现的一系列包装类.

[代码性质] VC可重用代码段
[代码作者] Fabio Angelini
[文件大小] 138K
[更新日期] 2003-4-5 10:24:00
[下载次数] 1450
http://www.vckbase.com/code/downcode.asp?id=1861
Skt32 2003-10-03
  • 打赏
  • 举报
回复
Oracle8 OCI API 封装类COdb 详细信息 < Oracle >

实现了Oracle8 OCI API的封装,并有该类的使用例子。

[代码性质] VC完整应用程序代码
[代码作者] Ben Bryant
[文件大小] 111K
[更新日期] 2003-4-5 11:01:00
[下载次数] 2041
http://www.vckbase.com/code/downcode.asp?id=1865
xsc2001 2003-10-03
  • 打赏
  • 举报
回复
_RecordsetPtr pPtr;
if (FAILED(pPtr.CreateInstance("ADODB.Recordset")))
{
AfxMessageBox("Create Instance failed!");
return FALSE;
}

CString strSRC;
strSRC="Driver=ORACLE ODBC DRIVER;Server=";
strSRC+="192.168.0.150;";
strSRC+="DBQ=192.168.0.150";
strSRC+=";UID=System;PWD=Manager";

CString strSQL = "select filename,filesize from ImageTest";

_variant_t varSRC(strSRC);
_variant_t varSQL(strSQL);
//AfxMessageBox("111");

HRESULT hr;
hr = pPtr->Open(varSQL,varSRC,adOpenForwardOnly,adLockReadOnly,adCmdText);
//hr = pPtr->Open(varSQL,varSRC,adOpenStatic,adLockOptimistic,adCmdText);
if(FAILED(hr))
{
AfxMessageBox("Open table failed!");
pPtr.Release();
return FALSE;
}
while(!pPtr->GetadoEOF())
{
_variant_t varName;
_variant_t varSize;

varName = pPtr->GetCollect ("filename");
varSize = pPtr->GetCollect ("filesize");

CString strName =(char *)_bstr_t(varName);
CString strSize =(char *)_bstr_t(varSize);

strName.TrimRight();
strSize.TrimRight();

int nCount = m_list.GetItemCount();
int nItem = m_list.InsertItem (nCount,_T(""));
m_list.SetItemText (nItem,0,strName);
m_list.SetItemText (nItem,1,strSize);

pPtr->MoveNext();
}

pPtr->Close();
pPtr.Release();
丁淇石头 2003-10-02
  • 打赏
  • 举报
回复
使用ODBC或ADO都是可以的。
oracle的连接和ms_sqlserver只有连接字符串不同,其他好象没什么区别
Onega 2003-10-01
  • 打赏
  • 举报
回复
#include "stdafx.h"
#import "c:\Program Files\Common Files\System\ado\msado15.dll" no_namespace rename("EOF", "EndOfFile")
int main(int argc, char* argv[])
{
printf("Use ADO to open Oracle!\n");
CoInitialize(NULL);
try
{
_ConnectionPtr pConn("ADODB.Connection");
_RecordsetPtr pRst("ADODB.Recordset");
pConn->Open("Provider=OraOLEDB.Oracle;Data Source=workdb;User Id=Onega;Password=sa;"
,"","",adConnectUnspecified);
pRst->Open(
"student",
_variant_t((IDispatch *) pConn, true),
adOpenStatic,
adLockOptimistic,
adCmdTable);
pRst->AddNew();
_variant_t windy("windyhui");
_variant_t age((long)8);
pRst->Fields->Item["name"]->Value =windy;
pRst->Fields->Item["age"]->Value = age;
pRst->Update();
pRst->Close();
pConn->Close();
}
catch (_com_error &e)
{
printf("Description = '%s'\n", (char*) e.Description());
}
::CoUninitialize();
printf("program end.\n");
return 0;
}
zhaolaoxin 2003-10-01
  • 打赏
  • 举报
回复
用什么方法看应用和编程方便与否。具体使用上oracle的连接和ms_sqlserver基本一样

4,012

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 数据库
社区管理员
  • 数据库
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧