Eclipse連接Oracle數(shù)據(jù)庫介紹
由于eclipse是開源產(chǎn)品,所以許多工具都以插件的形式提供由用戶選擇安裝,許多文章中都提到了如何連接數(shù)據(jù)庫,但是并沒有說明需要加載以及如何加載數(shù)據(jù)庫.jar,現(xiàn)在補充如下,以饗后人!
1.在d:\Oracle\ora92\jdbc\lib下(您的oracle安裝目錄)有許多.jar包文件,把其中的ojdbc14.jar復制到你的項目中,然后右擊該文件,選擇“構建路徑” 選擇其中的“導入”選項,現(xiàn)在可以打開并使用包下的類文件了。當然,也可以,把該驅(qū)動程序放在CLASSPATH環(huán)境變量中,其他類包的設置也類似!
-
2.加載及注冊驅(qū)動程序.
Class.forName("Oracle.jdbc.driver.OracleDriver");
加載驅(qū)動程序后,一般會建立一個Driver對象,并經(jīng)由調(diào)用DriverManager.registerDriver()來自動注冊此對象。
3,建立連接.
DriverManager.getConnection("jdbc:Oracle:thin:@localhost:1521:lc",name,pass);
其中JDBC url 的標準語法如下:
::
可知,其分為三個部分:
protocol:主要通訊協(xié)議
subprotocol:次要的通訊協(xié)議,其驅(qū)動的名稱
data source identifier:數(shù)據(jù)來源
如上例子所示:
"jdbc:Oracle:thin"是通訊協(xié)議,@后為"有效的主機地址,然后是端口號,默認的是:1521.然后是你的數(shù)據(jù)源,下面想必大家都知道了,就是用戶名和口令,當然也可寫出如下形式:
Connection con= DriverManager.getConnection("jdbc:Oracle:thin:name/pass@localhost:1521:lc");
返回一個Connection 的對象con,
4.建立一個sql陳述式對象
該例子是建立了個預制語句.
PreparedStatement pstmt =
con.prepareStatement(sql語句);
也可用
Statement stmt=con.createStatement();
其不同之處請查幫助文檔.
5,執(zhí)行該語句
executeUpdate(),executeQuery(),execute(),
使用方法請查幫助文檔
6,最后清理工作
關閉連接,做個完整的例子如下:
該類完成加載及連接,
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.SQLException;
public class DBConnection {
public static Connection dbConn(String name,String pass) {
Connection c = null;
try {
Class.forName("Oracle.jdbc.driver.OracleDriver");
} catch (ClassNotFoundException e) {
e.printStackTrace();
}
try {
c =DriverManager.getConnection("jdbc:Oracle:thin:@localhost:1521:sumoonbest",name,pass);
} catch (SQLException e1) {
e1.printStackTrace();
}
return c;
}
}
該類完成發(fā)送語句,執(zhí)行,清理
import java.sql.*;
public class DB extends DBConnection {
private static Connection con = null;
public static void main(String[] args) {
try {
con= dbConn("sumoonbest","8848");
if (con == null) {
System.out.print("連接失敗");
System.exit(0);
}
String url = "delete from t_user where username='wang'";
PreparedStatement pres = conn.prepareStatement(url);
System.out.print(pres.executeUpdate()) ;
}
con.close();
} catch (Exception e) {
e.printStackTrace();
}
}
} 本文出自:億恩科技【www.allwellnessguide.com】
服務器租用/服務器托管中國五強!虛擬主機域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]
|