標籤:
第一個問題:驅動名稱錯誤
錯誤如下:
從錯誤提示可以看出,oracle少寫了一個‘a‘,手誤對程式員來說是經常發生的事,有時能夠及時發現錯誤修正,有時就容易忽略。
建議大家將寫好的測試無誤的儲存起來,畢竟這些都是固定的寫法。
第二個問題:驅動名,資料庫連接url,使用者名稱,密碼都沒問題了,但是還是無法串連資料庫
錯誤如下:
PL/SQL已串連上
在網上找了半天,終於找到問題所在
jdbc:oracle:thin:@192.168.16.70:1521:orcldb
這個是資料庫連接的url,orcldb是資料庫服務名(SID)
接下來開啟oracle安裝目錄,找到listener.ora這個檔案
F:\oracle\product\10.2.0\db_1\network\ADMIN 這是我的檔案路徑
然後開啟,內容如下:
# listener.ora Network Configuration File: F:\oracle\product\10.2.0\db_1\NETWORK\ADMIN\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = F:\oracle\product\10.2.0\db_1)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = Oracle10.bdqn.com)
(SID_NAME = ORCL)
)
(SID_DESC =
(GLOBAL_DBNAME = zuosl)
(SID_NAME = zuosl)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
)
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.16.70)(PORT = 1521))
)
)
紅色部分就是要已連線的服務名,可以看到SID_NAME是‘zuosl‘,不是orcldb
接下來更改代碼,把orcldb改為zuosl,測試連接
好了,資料庫連接成功。
還有一個小問題,為什麼PL/SQL頂部的資料庫名稱會顯示orcldb呢?
開啟電腦開始菜單,找到Oracle的檔案夾,裡面有個NetManager
點擊開啟
上網瞭解了一下,orcldb是資料庫名,而zuosl是服務名,jdbc串連資料庫是要通過資料庫配置的服務名來串連,所以在建立服務時,服務名最好和資料庫名一致
使用jdbc串連oracle資料庫時遇到的一些問題