2009-08-24 133 views
3

我正在使用oracle 11g。我編寫代碼連接oracle數據庫與Java 1.6,但我無法連接到它。當配置指導線以下:JDBC瘦Oracle 11g

我已經ojdbc6.jarorai18n.jarclass12.jar 我設置:

CLASS_PATH:

%ORACLE_HOME%\jlib\orai18n.jar;r;%Oracle_home%\jdbc\ojdbc6.jar 

之後,我運行示例Java代碼連接到Oracle數據庫,但我遇到這個錯誤如下:

C:\Program Files\Java\jdk1.6.0_11\bin>javac c:\JDBCVersion.java 
c:\JDBCVersion.java:2: package oracle.jdbc does not exist 
import oracle.jdbc.*; 
^ 
c:\JDBCVersion.java:3: package oracle.jdbc.pool does not exist 
import oracle.jdbc.pool.OracleDataSource; 
        ^
c:\JDBCVersion.java:8: cannot find symbol 
symbol : class OracleDataSource 
location: class JDBCVersion 
OracleDataSource ods = new OracleDataSource(); 
^ 
c:\JDBCVersion.java:8: cannot find symbol 
symbol : class OracleDataSource 
location: class JDBCVersion 
OracleDataSource ods = new OracleDataSource(); 
         ^
4 errors 

任何人都可以幫助我解決他的問題?

感謝, Sopolin

回答

1

我不知道你的意思在這裏

Class_Path: %ORACLE_HOME%\jlib\orai18n.jar;%ORACLE_HOME%\oui\jlib\classes12.jar 
Path: %Oracle_home%\jdbc\ojdbc6.jar 

所有的罐子應該在CLASS_PATH。

您需要PATH上帶有dll的目錄。

+0

你能指導我配置這個問題嗎?感謝 – Sopolin 2009-08-25 03:13:24

4

爲了使用Oracle JDBC驅動程序,您必須具有ojdbc6.jar或CLASSPATH上的等效項。沒有任何這些JAR要求在操作系統PATH變量中。

您可以從JDBC/UCP page on the Oracle Technology Network獲取Oracle的JDBC驅動程序。

此外,如果CLASSPATH中已經有ojdbcX.jar,則不需要classes12.jar文件。簡而言之,如果您使用針對11g數據庫的Oracle Thin Driver for JDBC,則需要CLASSPATH中的ojdbc5.jar/ojdbc6.jar和orai18.jar。您需要OCI驅動程序的附加文件。

+0

你能指導我配置這個問題嗎?感謝 – Sopolin 2009-08-25 03:21:44

1

我想知道你的問題是否是JDBC驅動程序JAR的混合。我不知道你在哪裏,但你不應該同時擁有classes12.jar和ojdbc6.jar。第一個是JDK 1.2的舊版本;你應該刪除它。如果您正在編譯JDK 6,請使用ojdbc6.jar。

我還建議你使用java.sql接口,而不是使用特定於Oracle的靜態類型來保持代碼的通用性。這只是一個示例,但是您需要記住您的真實應用程序。

+0

我明白你告訴我,但我想指導我配置它。因爲我對此沒有任何經驗。謝謝 – Sopolin 2009-08-25 03:12:18