問題是:node
我在本身電腦(win7 64bit)上安裝了oracle的64位數據庫 經過sqlplus能正常鏈接
主要是安裝pl/sql時 我是這樣安裝的
一、在網上下載了個instantclient-basic-nt-11.2.0.3.0包 解壓放在E盤下 路徑以下E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2
二、我在PL/SQL中的perferences中connection中的oracle_home:E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2
OCI_library:E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2\oci.dll
三、而後我在環境變量中的path中加入了 E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2;
新建NLS_LANG:SIMPLIFIED CHINESE_CHINA.ZHS16GBK(數據庫字符集)
新建TNS_ADMIN:E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2\NETWORK\ADMIN;
重啓了pl/sql 並不能連接數據庫 (以前是能正經常使用的 可是前幾天我從新建了一個數據庫後就不行了 )
web
解決辦法是:sql
方法一:數據庫
pldev 彷佛不能正確讀取環境變量,它老是嘗試讀取註冊表第一個oraclehome,我也有跟你同樣的環境,我這裏好用,設置方法:
1)在pldev中的perferences中connection中的oracle_home:E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2
OCI_library:E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2\oci.dll
2)這個很重要,在E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2也建立一個networ\admin目錄,將註冊表中第一個oraclehome下的tnsname.ora複製進來
3)正如我說的,pldev不能正確讀取環境變量,也不能正確讀取你在pldev中配置的orahome,它總會嘗試讀取註冊表第一個oraclehome,來取得鏈接串,不要緊,只要保證註冊表第一個oraclehome的tnsname.ora與E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2的tnsname.ora同樣就能夠了
4)而後你就能經過tnsname來鏈接數據庫了,注意一點,若是你須要添加新的網絡鏈接,老是在註冊表第一個oraclehome的tnsname.ora和E:\instantclient-basic-nt-11.2.0.3.0\instantclient_11_2的tnsname.ora同時添加。
倒黴催的pldev!不支持64bit!網絡
方法二:oracle
1.安裝64位oracle DB。
2.安裝32位Oracle Client。
..\instantclient-basic-win32-10.2.0.5.zip
3.安裝PL/SQL Developer。
4. 選擇Tools > Preferences > options > "Oracle Home" and "OCI Library",例如:
Oracle Home: C:\Download\Software\instantclient-basic-win32-10.2.0.5
OCI Library: C:\Download\Software\instantclient-basic-win32-10.2.0.5\instantclient_10_2\oci.dll
5. 設置環境變量 NLS_LANG 和 TNS_ADMIN ,例如:
NLS_LANG: AMERICAN_AMERICA
TNS_ADMIN: C:\app\oracle\product\11.2.0\dbhome_1\network\admin\app