日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > c/c++ >内容正文

c/c++

VC++连接远程Oracle数据库

發(fā)布時(shí)間:2025/3/21 c/c++ 32 豆豆
生活随笔 收集整理的這篇文章主要介紹了 VC++连接远程Oracle数据库 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1.如果主機(jī)A要連接遠(yuǎn)程主機(jī)B的oracle數(shù)據(jù)庫(kù),那么主機(jī)A和主機(jī)B都要安裝oracle數(shù)據(jù)庫(kù),否則會(huì)提示找不到安裝程序異常(或者主機(jī)A安裝oralce客戶端程序),主機(jī)B要配置數(shù)據(jù)庫(kù)本地網(wǎng)絡(luò)服務(wù)名和監(jiān)聽(tīng)程序,用于對(duì)外網(wǎng)絡(luò)開(kāi)放本地?cái)?shù)據(jù)庫(kù)網(wǎng)絡(luò)服務(wù)和監(jiān)聽(tīng)遠(yuǎn)程程序通過(guò)網(wǎng)絡(luò)連接本地?cái)?shù)據(jù)庫(kù)。

2.oracle數(shù)據(jù)庫(kù)中用到的3個(gè)配置程序:Database Configuration Assistant 用于配置oracle數(shù)據(jù)庫(kù),如果安裝過(guò)程中數(shù)據(jù)庫(kù)配置或者安裝出錯(cuò),可以直接刪除數(shù)據(jù)庫(kù)重新配置不用卸載軟件重新安裝;Net Configuration Assistant用于配置本機(jī)數(shù)據(jù)庫(kù)網(wǎng)絡(luò)監(jiān)聽(tīng)程序和數(shù)據(jù)庫(kù)網(wǎng)絡(luò)服務(wù)名,如果連接提示無(wú)法識(shí)別提供的sid等錯(cuò)誤,可以直接刪除監(jiān)聽(tīng)程序重新配置并同時(shí)刪除本地網(wǎng)絡(luò)服務(wù)名重新配置;Net Manager用于查看Net Configuration Assistant中配置的本地網(wǎng)絡(luò)服務(wù)名和監(jiān)聽(tīng)程序;1個(gè)數(shù)據(jù)庫(kù)連接與操作程序:SQL Plus用于連接數(shù)據(jù)并實(shí)現(xiàn)數(shù)據(jù)系統(tǒng)配置與數(shù)據(jù)操作。

3.常用命名:cmd中輸入lsnrctl status用于查看當(dāng)前數(shù)據(jù)庫(kù)網(wǎng)絡(luò)服務(wù)與監(jiān)聽(tīng)程序狀態(tài),如果聽(tīng)見(jiàn)程序?yàn)锽LOCKED狀態(tài)則遠(yuǎn)程無(wú)法連接,正常為READY狀態(tài);如果連接不上遠(yuǎn)程數(shù)據(jù)庫(kù),可以通過(guò)此命令查看服務(wù)是否開(kāi)啟;oracle數(shù)據(jù)庫(kù)插入時(shí)間日期,使用to_date('2013-07-05 23:56:25’, 'yyyy-mm-dd hh24:mi:ss’),設(shè)置系統(tǒng)時(shí)間日期顯示格式:alter session set nls_date_format=‘yyyy-mm-dd hh24:mi:ss’。

4.oracle 11g標(biāo)準(zhǔn)版vc++連接字符串:

strConnect.Format("Provider=OraOLEDB.Oracle.1;Password=%s;Persist Security Info=True;User ID=%s;\
?Data Source=\"(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = %s)(PORT = %s)) )(CONNECT_DATA = (SID = %s)))\"",
?m_sPwd, m_sUid, m_sHost, m_sPort, m_sSid);//123456 system 192.168.37,1521(默認(rèn)端口),testdata(本地網(wǎng)絡(luò)服務(wù)配置服務(wù)名)

?try
?{
??::CoInitialize(NULL);//初始化com環(huán)境(必須,否則提示異常)
??m_pConnection.CreateInstance(__uuidof(Connection));
??m_pConnection->ConnectionTimeout = 10;// 設(shè)置連接超時(shí)10秒
??m_pConnection->Open(_bstr_t(LPCTSTR(strConnect)),"","",adModeUnknown);
??m_pConnection->CursorLocation = adUseClient;//設(shè)置使用客戶端連接(可以共享讀寫(xiě))
?}
?catch (_com_error e)
?{
??AfxMessageBox(e.Description());?
??//AfxMessageBox(e.ErrorMessage());
??return FALSE;
?}
?catch(...)
?{
??MessageBox("數(shù)據(jù)庫(kù)連接失敗!", "未知原因", MB_OK|MB_ICONERROR);?
??return FALSE;
?}
?

?

總結(jié)

以上是生活随笔為你收集整理的VC++连接远程Oracle数据库的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。