JDBC thin driverを使用した接続のサンプル
初めてやったので記録しておく
1.ソースファイル、JdbcTest.java作成(参考:http://download.oracle.com/docs/cd/E16338_01/java.112/b56281/getsta.htm#i1008334)
import java.sql.Connection; import java.sql.ResultSet; import java.sql.Statement; import java.sql.SQLException; import oracle.jdbc.pool.OracleDataSource; class JdbcTest { public static void main (String args []) throws SQLException { OracleDataSource ods = null; Connection conn = null; Statement stmt = null; ResultSet rset = null; // Create DataSource and connect to the local database ods = new OracleDataSource(); ods.setURL("jdbc:oracle:thin:@//<=host_name=>:1521/<=service_name=>"); ods.setUser("<=ora_user=>"); ods.setPassword("<=ora_password=>"); conn = ods.getConnection(); try { // Query the employee names stmt = conn.createStatement (); rset = stmt.executeQuery ("SELECT <=col=> FROM <=table=>"); // Print the name out while (rset.next ()) System.out.println (rset.getString (1)); } //Close the result set, statement, and the connection finally{ if(rset!=null) rset.close(); if(stmt!=null) stmt.close(); if(conn!=null) conn.close(); } } } EOF
※<=と=>で囲んだ各所に、<=host_name=>:Oracleが起動しているホスト名か、SCANのホスト名<=service_name=>:Oracleのサービス名、SIDではない。RACだったら末尾に1とか2とか点いてない方の名前<=ora_user=>:接続試験に使用するDBユーザ名<=ora_password=>:同パスワード<=col=>:接続試験でselectを実行するカラム名<=table=>:同テーブル名
をいれてやる。
2.環境変数設定
# #javacのある場所にPATHを通す # export PATH=${PATH}:/hoge/fuga # # CLASSPATHにjdbcファイル、およびカレントディレクトリを指定する # export CLASSPATH=${CLASSPATH}:/hoga/fuge/ojdbc5.jar:/fuga/hoge/orai18n.jar:.
3.javac実行
# javac JdbcTest.java #
4.実行
# java JdbcTest
(ここにSQL文の結果が帰ってくる)
CLASSPATHにカレントディレクトリを含めないと、4でClassNotFoundになる。その時は
# java -classpath ${CLASSPATH}:. JdbcTest
と、やることで回避可能。