⑴ 請教JDBC怎麼連接ORACLE資料庫
1)連接Oracle 8/8i/9i/10g/11g(thin模式)
Class.forName("oracle.JDBC.driver.OracleDriver").newInstance();
String url="JDBC:oracle:thin:@localhost:1521:orcl" //orcl為Oracle資料庫的SID
String user="test";
String password="test";
Connection con=DriverManager.getConnection(url,user,password);
2)連接DB2資料庫
Class.forName("com.ibm.db2.jcc.DB2Driver");
String url="JDBC:db2://localhost:5000/testDb";
String user="test"; String password="test";
Connection con=DriverManager.getConnection(url,user,password);
3)連接MySQL資料庫
Class.forName("com.mysql.jdbc.Driver");
String url="JDBC:mysql://localhost:8080/testDB";
String user="test"; String password="test";
Connection con=DriverManager.getConnection(url,user,password);
4)連接SQL Server2000資料庫
Class.forName("com.microsoft.JDBC.sqlserver.SQLServerDriver");
String url="JDBC:microsoft:sqlserver://localhost:1433;DatabaseName=testDb";
String user="test"; String password="test";
Connection con=DriverManager.getConnection(url,user,password);
5)連接PostgreSQL資料庫
Class.forName("org.postgresql.Driver");
String url="JDBC:postgresql://localhost/testDb";
String user="test"; String password="test";
Connection con=DriverManager.getConnection(url,user,password);
6)連接Access資料庫
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="JDBC:odbc:Driver={Microsoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/Data/testDb/mdb");
Connection conn=DriverManager.getConnection(url,"","");
7連接Sybase資料庫
Class.forName("com.sybase.JDBC.SybDriver");
String url="JDBC:sybase:Tds:localhost:5007/testDb";
Properties pro=System.getProperties();
pro.put("user","userId");
pro.put("password","user_password");
Connection con=DriverManager.getConnection(url,pro);
8連接informix資料庫
Class.forName("com.informix.JDBC.ifxDriver");
String url="JDBC:informix-sqli:localhost:1533/testDb:INFORMIXSERVER=myserver"user=testUser;password=testpassword"; Connection con=DriverManager.getConnection(url);
⑵ 如何使用JDBC連接oracle資料庫
樓主您好
1.在動手先代碼之前,我們先把環境配置妥善。先從安裝了Oracle的資料庫伺服器中,找到
Oracle安裝目錄,然後將該目錄下的jdbc\lib\classes12.jar文件拷貝到WEB發布伺服器的某個目錄。假設就直接放在C:\根目錄下吧,然後把該路徑添加到„系統--高級--環境變數‟
中變數名為„CLASSPATH‟的值中,如:
D:\Program Files\SQLLIB\java\db2java.zip;D:\Program
Files\SQLLIB\java\runtime.zip;c:classes12.jar;
也就是讓java能夠找到這個包。
2
1.注冊載入驅動
驅動名:DRIVER="oracle.jdbc.driver.OracleDriver";
Class.forName("驅動類名");
3
2.獲得連接
資料庫地址: URL="jdbc:oracle:thin:@127.0.0.1:1521:ORCL";
Connection conn = DriverManager.getConnection(資料庫地址,用戶名,密碼);
System.out.println("連接成功");
4
3.創建Statement對象
Statement
類的主要是用於執行靜態 SQL 語句並返回它所生成結果的對象。通過Connection 對象的
createStatement()方法可以創建一個Statement對象。例如:Statement statament =
connection.createStatement(); 具體示例創建Statement對象
Statement statamentMySQL =connectMySQL.createStatement();
⑶ 如何利用JDBC連接並操作Oracle資料庫
S1、下載ojdbc14.jar驅動文件,並將該文件放到你的項目中去;
S2、在MyEclipse中的項目中添加Oracle驅動程序:在項目名上右鍵->BuildPath->AddExternalArchiver然後選擇你剛才放在項目中的文件,點確定即可。
S3、打開Oracle的各項服務,並在Oracle中建一張表。
S4、編寫MyEclipse與Oracle的連接程序:
[cpp]viewplainprint?<SPANstyle="FONT-SIZE:16px">importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
importjava.sql.Statement;
importjava.sql.*;
publicclassJDBC_Test{
//orcl為oracle資料庫中的資料庫名,localhost表示連接本機的oracle資料庫
//1521為連接的埠號
privatestaticStringurl="jdbc:oracle:thin:@localhost:1521:orcl";
//system為登陸oracle資料庫的用戶名
privatestaticStringuser="system";
//manager為用戶名system的密碼
privatestaticStringpassword="manager";
publicstaticConnectionconn;
;
publicstaticResultSetrs;
publicstaticStatementst;
//連接資料庫的方法
publicvoidgetConnection(){
try{
//初始化驅動包
Class.forName("oracle.jdbc.driver.OracleDriver");
//根據資料庫連接字元,名稱,密碼給conn賦值
conn=DriverManager.getConnection(url,user,password);
}catch(Exceptione){
//TODO:handleexception
e.printStackTrace();
}
}
//測試能否與oracle資料庫連接成功
publicstaticvoidmain(String[]args){
JDBC_Testbase=newJDBC_Test();
base.getConnection();
if(conn==null){
System.out.println("與oracle資料庫連接失敗!");
}else{
System.out.println("與oracle資料庫連接成功!");
}
}
}
</SPAN>
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.PreparedStatement;
importjava.sql.ResultSet;
importjava.sql.Statement;
importjava.sql.*;
publicclassJDBC_Test{
//orcl為oracle資料庫中的資料庫名,localhost表示連接本機的oracle資料庫
//1521為連接的埠號
privatestaticStringurl="jdbc:oracle:thin:@localhost:1521:orcl";
//system為登陸oracle資料庫的用戶名
privatestaticStringuser="system";
//manager為用戶名system的密碼
privatestaticStringpassword="manager";
publicstaticConnectionconn;
;
publicstaticResultSetrs;
publicstaticStatementst;
//連接資料庫的方法
publicvoidgetConnection(){
try{
//初始化驅動包
Class.forName("oracle.jdbc.driver.OracleDriver");
//根據資料庫連接字元,名稱,密碼給conn賦值
conn=DriverManager.getConnection(url,user,password);
}catch(Exceptione){
//TODO:handleexception
e.printStackTrace();
}
}
//測試能否與oracle資料庫連接成功
publicstaticvoidmain(String[]args){
JDBC_Testbase=newJDBC_Test();
base.getConnection();
if(conn==null){
System.out.println("與oracle資料庫連接失敗!");
}else{
System.out.println("與oracle資料庫連接成功!");
}
}
}
S5、如果上述的連接已經建立,就可以利用JDBC中的JavaAPI對資料庫進行操作了,具體的查詢,插入,刪除,更新操作如下:
[cpp]viewplainprint?<SPANstyle="FONT-SIZE:16px">代碼轉載自:http://blog.csdn.net/cxwen78/article/details/6863696
importjava.sql.Connection;
importjava.sql.DriverManager;
importjava.sql.ResultSet;
importjava.sql.SQLException;
importjava.sql.Statement;
publicclassJDBC_Test{
//創建靜態全局變數
staticConnectionconn;
staticStatementst;
publicstaticvoidmain(String[]args){
insert();//插入添加記錄
update();//更新記錄數據
delete();//刪除記錄
query();//查詢記錄並顯示
}
/*插入數據記錄,並輸出插入的數據記錄數*/
publicstaticvoidinsert(){
conn=getConnection();//首先要獲取連接,即連接到資料庫
try{
Stringsql="INSERTINTOstaff(name,age,sex,address,depart,worklen,wage)"
+"VALUES('Tom1',32,'M','china','Personnel','3','3000')";//插入數據的sql語句
st=(Statement)conn.createStatement();//創建用於執行靜態sql語句的Statement對象
intcount=st.executeUpdate(sql);//執行插入操作的sql語句,並返回插入數據的個數
System.out.println("向staff表中插入"+count+"條數據");//輸出插入操作的處理結果
conn.close();//關閉資料庫連接
}catch(SQLExceptione){
System.out.println("插入數據失敗"+e.getMessage());
}
}
/*更新符合要求的記錄,並返回更新的記錄數目*/
publicstaticvoipdate(){
conn=getConnection();//同樣先要獲取連接,即連接到資料庫
try{
Stringsql="updatestaffsetwage='2200'wherename='lucy'";//更新數據的sql語句
st=(Statement)conn.createStatement();//創建用於執行靜態sql語句的Statement對象,st屬局部變數
intcount=st.executeUpdate(sql);//執行更新操作的sql語句,返回更新數據的個數
System.out.println("staff表中更新"+count+"條數據");//輸出更新操作的處理結果
conn.close();//關閉資料庫連接
}catch(SQLExceptione){
System.out.println("更新數據失敗");
}
}
/*查詢資料庫,輸出符合要求的記錄的情況*/
publicstaticvoidquery(){
conn=getConnection();//同樣先要獲取連接,即連接到資料庫
try{
Stringsql="select*fromstaff";//查詢數據的sql語句
st=(Statement)conn.createStatement();//創建用於執行靜態sql語句的Statement對象,st屬局部變數
ResultSetrs=st.executeQuery(sql);//執行sql查詢語句,返回查詢數據的結果集
System.out.println("最後的查詢結果為:");
while(rs.next()){//判斷是否還有下一個數據
//根據欄位名獲取相應的值
Stringname=rs.getString("name");
intage=rs.getInt("age");
Stringsex=rs.getString("sex");
Stringaddress=rs.getString("address");
Stringdepart=rs.getString("depart");
Stringworklen=rs.getString("worklen");
Stringwage=rs.getString("wage");
//輸出查到的記錄的各個欄位的值
System.out.println(name+""+age+""+sex+""+address
+""+depart+""+worklen+""+wage);
}
conn.close();//關閉資料庫連接
}catch(SQLExceptione){
System.out.println("查詢數據失敗");
}
}
/*刪除符合要求的記錄,輸出情況*/
publicstaticvoiddelete(){
conn=getConnection();//同樣先要獲取連接,即連接到資料庫
try{
Stringsql="deletefromstaffwherename='lili'";//刪除數據的sql語句
st=(Statement)conn.createStatement();//創建用於執行靜態sql語句的Statement對象,st屬局部變數
intcount=st.executeUpdate(sql);//執行sql刪除語句,返回刪除數據的數量
System.out.println("staff表中刪除"+count+"條數據 ");//輸出刪除操作的處理結果
conn.close();//關閉資料庫連接
}catch(SQLExceptione){
System.out.println("刪除數據失敗");
}
}
/*獲取資料庫連接的函數*/
(){
Connectioncon=null;//創建用於連接資料庫的Connection對象
try{
Class.forName("com.mysql.jdbc.Driver");//載入Mysql數據驅動
con=DriverManager.getConnection(
"jdbc:mysql://localhost:3306/myuser","root","root");//創建數據連接
}catch(Exceptione){
System.out.println("資料庫連接失敗"+e.getMessage());
}
returncon;//返回所建立的資料庫連接
}
}
</SPAN>
⑷ 請教JDBC怎麼連接ORACLE資料庫
找到你安裝的oracle文件夾,例如我的oracle是裝到C:\
則找到路徑:C:\oracle\proct\10.2.0\db_1\jdbc\lib
下有一個文件叫class12.jar復制他,在MyEclipse 創建一個web項,創建完成後粘貼到如圖位置復制後 驅動導入~
然後導入後 給你個例子看吧 照著例子四部:
package com.livechain.jdbc;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
public class TestQuery {
public static void main(String[] args) {
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
//0 准備資料庫的連接參數
//相對於不同DBMS,樣式是不同的;相對於同一個DBMS的url樣式比較固定。
String url = "jdbc:oracle:thin:@192.168.10.100:1521:orcl";
String user = "scott";
String password = "tiger";
//准備好查詢語句
String sql = "SELECT * FROM test01";
try {
//1 將資料庫驅動類注冊到DriverManager
Class.forName("oracle.jdbc.driver.OracleDriver");
//2 作資料庫連接(通過DriverManager得到當前應用程序和資料庫的對話)
conn = DriverManager.getConnection(url, user, password);
//3 創建Statement對象,用來發送SQL語句
stmt = conn.createStatement();
//4 用Statement對象執行SQL語句,得到查詢語句的結果集。
rs = stmt.executeQuery(sql);
//5 取數據
while(rs.next()) {
System.out.println(rs.getInt("tid")+"\t"+rs.getString("tname"));
}
/*while(rs.next()) {
System.out.println(rs.getInt(1)+"\t"+rs.getString(2));
}*/
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (SQLException e) {
e.printStackTrace();
} finally {
try {
if(rs != null) {
rs.close();
rs = null;
}
if(stmt != null) {
stmt.close();
stmt = null;
}
if(conn != null) {
conn.close();
conn = null;
}
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
⑸ 如何使用JDBC連接oracle資料庫
據我所知,使用jdbc連接上oracle有一種方法:
使用thin連接
由於thin驅動都是純Java代碼,並且使用TCP/IP技術通過java的Socket連接上Oracle資料庫,所以thin驅動是與平台無關的,你無需安裝Oracle客戶端,只需要下載一個thin驅動的jar包,並且將環境變數中的CLASS_PATH變數中加入thin驅動的路徑就可以了。Thin驅動雖然與平台無關,也無需安裝Oracle客戶端,但是有一個致命的缺陷就是性能一般,達不到如OCI方式的企業級的要求。
另外,如果一個oracle資料庫對應一台主機,可以使用thin連接;如果一個oracle資料庫對應四五台主機(集群伺服器),使用thin時,需要把tnsnames.ora文件中的相關資料庫的整個連接字元串都拷貝下來,如此才能連接上oracle集群資料庫。而這種方法也是和數位同事討論並Google了大量資料後才發現的。之前我一直以為thin不支持集群資料庫的方式。
⑹ 如何使用JDBC連接oracle資料庫
給你一個參考的文檔
關於使用jdbc連接oracle的各種資料庫實現方法
⑺ 怎樣利用JDBC連接並操作Oracle資料庫
文件用:ojdbc6.jar
/**
*一個非常標準的連接Oracle資料庫的示例代碼
*/
publicvoidtestOracle()
{
Connectioncon=null;//創建一個資料庫連接
PreparedStatementpre=null;//創建預編譯語句對象,一般都是用這個而不用Statement
ResultSetresult=null;//創建一個結果集對象
try
{
Class.forName("oracle.jdbc.driver.OracleDriver");//載入Oracle驅動程序
System.out.println("開始嘗試連接資料庫!");
Stringurl="jdbc:oracle:thin:@127.0.0.1:1521:XE";//127.0.0.1是本機地址,XE是精簡版Oracle的默認資料庫的SID
//如果是服務名,則用Stringurl="jdbc:oracle:thin:@127.0.0.1:1521/ORCL
Stringuser="system";//用戶名,系統默認的賬戶名
Stringpassword="147";//你安裝時選設置的密碼
con=DriverManager.getConnection(url,user,password);//獲取連接
System.out.println("連接成功!");
Stringsql="select*fromstudentwherename=?";//預編譯語句,「?」代表參數
pre=con.prepareStatement(sql);//實例化預編譯語句
pre.setString(1,"劉顯安");//設置參數,前面的1表示參數的索引,而不是表中列名的索引
result=pre.executeQuery();//執行查詢,注意括弧中不需要再加參數
while(result.next())
//當結果集不為空時
System.out.println("學號:"+result.getInt("id")+"姓名:"
+result.getString("name"));
}
catch(Exceptione)
{
e.printStackTrace();
}
finally
{
try
{
//逐一將上面的幾個對象關閉,因為不關閉的話會影響性能、並且佔用資源
//注意關閉的順序,最後使用的最先關閉
if(result!=null)
result.close();
if(pre!=null)
pre.close();
if(con!=null)
con.close();
System.out.println("資料庫連接已關閉!");
}
catch(Exceptione)
{
e.printStackTrace();
}
}
}
⑻ 如何使用JDBC連接oracle資料庫
1)首先要有java連接oracle資料庫的驅動類,下載好後導入到工程里
2)代碼:
import java.sql.*;
public class JDBCTest {
/**
* @param args
* @throws ClassNotFoundException
*/
public static void main(String[] args)
throws ClassNotFoundException, SQLException{
//1.准備參數
String ip = "192.168.0.26";
String sid = "tarena";
String port = "1521";
String dbUser = "openlab";
String dbPassword = "open123";
String driver
= "oracle.jdbc.driver.OracleDriver";
//2.構造驅動實例
Class.forName(driver);
//3.創建連接
//連接字元串是固定的形式,oracle的形式:
String url
= "jdbc:oracle:thin:@"
+ ip + ":" + port + ":" + sid;
Connection conn
= DriverManager.getConnection
(url, dbUser, dbPassword);
//4.執行SQL語句
String sql = "select id, password, name from user_sd1104 " +
"where id = 1001 and password = '1234'";
Statement stmt = conn.createStatement();
ResultSet rs
= stmt.executeQuery(sql);//執行sql語句
while(rs.next()){
int id = rs.getInt(1);
String pwd = rs.getString(2);
String name = rs.getString(3);
System.out.println("welcome," + name);
}
rs.close();
stmt.close();
conn.close();
}
}
⑼ java怎樣通過jdbc來訪問oracle資料庫的存儲過程和存儲函數
//存儲過程create or replace Procere countBySal(
p_sal emp.sal%type,
p_count OUT number
)as
begin
select count(*) into p_count from emp where sal >= p_sql;
end countBySal; //調用步奏import java.sql.CallableStatement; //帶哦用存儲過程所必須的語句借口
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Types;public class EmpUtil {
public static int countBySal(double sal) throws Exception{
Class.forName("oracle.jdbc.driver.OracleDriver");
String url="jdbc:oracle:thin:@localhost:1521:test";
Connection cn=DriverManager.getConnection(url, "scott", "tiger");
String sql="{call countBySal(?,?)}";//調用存儲過程的語句,call後面的就是存儲過程名和需要傳入的參數
CallableStatement cst=cn.prepareCall(sql);
cst.setDouble(1, sal);//設置in參數的值
cst.registerOutParameter(2, Types.INTEGER);//注冊out參數的類型
cst.execute();
int result = cst.getInt(2);
cst.close();
cn.close();
return result;
}
public static void main(String[] args) {
int count;
try {
count = EmpUtil.countBySal(3000);
System.out.println("工資在3000元以上的人數為:"+count);
} catch (Exception e) {
e.printStackTrace();
}
}