国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務(wù)器 > Web服務(wù)器 > 正文

win2003 64位系統(tǒng)下ODBC連接使用方法

2024-09-01 13:51:03
字體:
供稿:網(wǎng)友

環(huán)境

一般系統(tǒng)部署的服務(wù)器若是windows系統(tǒng),就會采用64位win2003的結(jié)構(gòu)。可是我們編寫的程序絕大多數(shù)都是在x86下32位cpu架構(gòu)中編譯的,要正常移植到64位機(jī)器還真的是很麻煩,不僅要求應(yīng)用程序是64位模式編譯,還需要數(shù)據(jù)庫也得是64位,iis64位,framework64位,好在相應(yīng)的廠商都提供這些支持組件。不知道有人遇到過像我這樣的問題么,應(yīng)用中有需要增加一個Access數(shù)據(jù)庫導(dǎo)入功能,這就需要連接ODBC的mdb驅(qū)動,可是Microsoft OLE DB Provider for Jet不支持64位系統(tǒng),即使安裝了office2007后,發(fā)現(xiàn)ODBC也沒有任何變化,這下尷尬了。

分析

對64位系統(tǒng)結(jié)構(gòu)進(jìn)行分析。

c盤下有兩個程序安裝目錄:Program Files和Program Files (x86);
windows文件夾下有兩個目錄:System32和SysWOW64;
在System32中的odbcad32.exe中沒有其他驅(qū)動(這也是控制面板中ODBC直接啟動的程序),但是在SysWOW64下的odbcad32.exe卻存在mdb之類的所有驅(qū)動,這說明ODBC驅(qū)動在操作系統(tǒng)中是存在的,只是因?yàn)檫\(yùn)行模式導(dǎo)致調(diào)用的odbc程序不同,造成找不到對應(yīng)的驅(qū)動。了解到這一點(diǎn),就能找到解決方案:切換64位運(yùn)行模式為32位。

解決步驟

 

切換IIS運(yùn)行模式為32位

開始→運(yùn)行→cmd,運(yùn)行腳本

cscript %SYSTEMDRIVE%/inetpub/adminscripts/adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 1

即可將IIS由64位切換為32位模式;若想恢復(fù)為64位模式,運(yùn)行腳本:cscript %SYSTEMDRIVE%/inetpub/adminscripts/adsutil.vbs SET W3SVC/AppPools/Enable32bitAppOnWin64 0。若腳本報(bào)錯,切換路徑為C:/Inetpub/Adminscripts,因?yàn)閍dsutil.vbs文件在該路徑下。

Asp.net運(yùn)行模式為32位

重新注冊asp.net,開始→運(yùn)行→cmd

運(yùn)行腳本:%SYSTEMROOT%/Microsoft.NET/Framework/v2.0.40607/aspnet_regiis.exe -i

若要注冊64位,腳本為:%SYSTEMROOT%/Microsoft.NET/Framework64/v2.0.40607/aspnet_regiis.exe -i

重啟機(jī)器,IIS即可運(yùn)行32位的程序,ODBC的連接也生效了。

Oracle64位切換為32位的方法

若以前系統(tǒng)運(yùn)行在64位模式下使用的是64位的oracle,修改為32位模式后程序的數(shù)據(jù)庫連接就失敗,會報(bào):“如果在安裝 32 位 Oracle 客戶端組件的情況下以 64 位模式運(yùn)行……”這個錯誤。想到的方法自然是再安裝32位的oracle客戶端了。其實(shí)最簡單的方法是下載ORALCE工具包Instant Client Package。將其解壓到任意文件夾下,如D:/oracle/instantclient_11_2。

設(shè)置對應(yīng)的環(huán)境變量:右擊”我的電腦” – “屬性” – “高級” – “環(huán)境變量” – “系統(tǒng)環(huán)境變量”:
1、新建NLS_lANG=SIMPLIFIED CHINESE_CHINA.ZHS16GBK(注意中間有空格,這個如果不設(shè),toad查詢中文會是亂碼)
2、新建或修改TNS_ADMIN=D:/oracle/instantclient_11_2
3、修改Path增加D:/oracle/instantclient_11_2,同時(shí)刪除原來64位oracle的路徑

其中第一條很重要,解決運(yùn)行時(shí)報(bào):Ora-12705: cannot access nls data files or invalid environment specified的錯誤。

新建文本文件,修改后綴名為reg,內(nèi)容為:

Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE/SOFTWARE/ORACLE/KEY_OraClient10g_home1] ”NLS_LANG”=”SIMPLIFIED CHINESE_CHINA.ZHS16GBK” ”ORACLE_BUNDLE_NAME”=”Standard” ”ORACLE_GROUP_NAME”=”Oracle – OraClient10g_home1″ ”ORACLE_HOME”=”D:/oracle/instantclient_11_2” ”ORACLE_HOME_KEY”=”SOFTWARE//ORACLE//KEY_OraClient10g_home1″ ”ORACLE_HOME_NAME”=”OraClient10g_home1″

雙擊導(dǎo)入注冊表

將64位oracle的tns文件拷入D:/oracle/instantclient_11_2中,否則運(yùn)行會報(bào):ORA-12154: TNS:could not resolve the connect identifier specified錯誤。

完成以上修改后,重啟電腦,運(yùn)行網(wǎng)站程序,發(fā)現(xiàn)一切都如期望的一樣工作!

祝大家好運(yùn)!

 

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 锦屏县| 同德县| 福泉市| 甘谷县| 清新县| 贵港市| 西贡区| 溧阳市| 昭苏县| 南乐县| 定西市| 富锦市| 卓尼县| 沙河市| 金寨县| 旬邑县| 循化| 临安市| 原平市| 长兴县| 定日县| 白沙| 易门县| 逊克县| 武鸣县| 方城县| 临沭县| 江川县| 托克逊县| 灵川县| 崇左市| 正定县| 锡林浩特市| 高邮市| 威海市| 富锦市| 三亚市| 尼玛县| 克山县| 弥渡县| 清水河县|