1、Oracle8/8i/9i數據庫(thin模式)
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
String url="jdbc:oracle:thin:@localhost:1521:orcl";
//orcl爲數據庫的SID
String user="test";
String password="test";
Connection conn= DriverManager.getConnection(url,user,password);
2、DB2數據庫
Class.forName("com.ibm.db2.jdbc.app.DB2Driver ").newInstance();
String url="jdbc:db2://localhost:5000/sample";
//sample爲你的數據庫名
String user="admin";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
3、Sql Server7.0/2000數據庫
Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb";
//mydb爲數據庫
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
If access with jtds:
dis.db.driver=net.sourceforge.jtds.jdbc.Driver
# JDBC "url" of the DIS database that you are connecting to
dis.db.url=jdbc:jtds:sqlserver://tiv-isc01.cn.ibm.com:1433/DIS1
4、Sybase數據庫
Class.forName("com.sybase.jdbc.SybDriver").newInstance();
String url =" jdbc:sybase:Tds:localhost:5007/myDB";
//myDB爲你的數據庫名
Properties sysProps = System.getProperties();
SysProps.put("user","userid");
SysProps.put("password","user_password");
Connection conn= DriverManager.getConnection(url, SysProps);
5、Informix數據庫
Class.forName("com.informix.jdbc.IfxDriver").newInstance();
String url =
"jdbc:informix-sqli://123.45.67.89:1533/myDB:INFORMIXSERVER=myserver;
user=testuser;password=testpassword";
//myDB爲數據庫名
Connection conn= DriverManager.getConnection(url);
6、MySQL數據庫
Class.forName("org.gjt.mm.mysql.Driver").newInstance();
String url ="jdbc:mysql://localhost/myDB?user=soft&password=soft1234&useUnicode=true&characterEncoding=8859_1"
//myDB爲數據庫名
Connection conn= DriverManager.getConnection(url);
7、PostgreSQL數據庫
Class.forName("org.postgresql.Driver").newInstance();
String url ="jdbc:postgresql://localhost/myDB"
//myDB爲數據庫名
String user="myuser";
String password="mypassword";
Connection conn= DriverManager.getConnection(url,user,password);
//////////////////////////////////////////////////////
//// jdbc連接mysql
//////////////////////////////////////////////////////
1.使用Sun的JDBC-ODBC橋驅動程序,語句爲:
Class.forName("sun.jdbc.odbc.driver.JdbcOdbcDriver");
然後要設置數據源,設置好後ODBC數據源url爲:jdbc:odbc:<數據源名>
連接數據源:DriverManager.getConnection("jdbc:odbc:grade");
2.如果沒有用sun的jdbc-odbc橋驅動程序,最直接的方法是把下載的jdbc驅動拷貝到jre\lib\ext目錄,就不用設置環境變量,就能用加載驅動,如mysql:
mysql-connector-java-5.0.0-beta-bin.jar拷貝到jre\lib\ext
MysqlDriver.java
import java.sql.*;
public class MysqlDriver{
public static void main(String args[]){
try{
//加載數據庫驅動程序類隱式註冊驅動程序, mysql也可以用Class.forName("org.gjt.mm.mysql.Driver").newInstance();
Class.forName("com.mysql.jdbc.Driver").newInstance();
System.out.println("Success loading Mysql Driver!");
}catch(Exception ex){
System.out.println("Error loading Mysql Driver!");
}
try{
String name,xuehao,chinese,math,english;
Connection conn = null;
Statement stmt = null;
ResultSet rs = null;
//創建一個Connection實例建立與數據庫之間的聯繫,
conn = DriverManager.getConnection("jdbc:mysql://localhost/vote?user=root&password=******&characterEncoding=gb2312");
System.out.println("Success connect Mysql Database!");
//Statement對象用於將sql語句發送到數據庫中
stmt = conn.createStatement();
rs = stmt.executeQuery("SELECT * FROM grade");
//ResultSet對象包含符合sql語句所有行,並通過一套get()方法對行中數據的訪問。
while(rs.next()){
name = rs.getString("name");
xuehao = rs.getString("num");
chinese = rs.getString("chinese");
math = rs.getString("math");
english = rs.getString("english");
System.out.println("學號 "+"姓名 "+"語文 "+"數學 "+"英語");
System.out.println(" "+xuehao+" "+name+" "+chinese+" "+math+" "+english);
System.out.println();
}
conn.close();
}catch(SQLException ex){
System.out.println("SQLException:"+ex.getMessage());
System.out.println("SQLState:"+ex.getSQLState());
System.out.println("VendorError:"+ex.getErrorCode());
}
}
}
3.jdbc url參數說明
url格式:jdbc:mysql://[hostname][port]/dbname[?param1=value1][?m2=value2]...
參數名 取值 缺省
user 數據庫用戶名 無
password 數據庫用戶口令 無
autoReconnect 當數據庫連接丟失時是否自動連接,取值true/false false
maxReconnects 如果autoReconnect爲true,此參數爲重試次數,缺省爲3次 3
initialTimeout 如果autoReconnect爲true,此參數爲重新連接前等待的秒數 2
maxRows 設置查詢時返回的行數,0表示全部 0
useUnicode 是否使用unicode輸出,true/false false
characterEncoding 如果useUnicode,該參數制定encoding類型,建議使用8859_1 無