1. 程式人生 > >23、Oracle等其他資料庫連線

23、Oracle等其他資料庫連線

學習目標:

1、瞭解Java的歷史

2、為什麼要學習Java語言

3、端正學習態度

學習過程:

oracle等其他資料庫連線

前面我們講過JDBC是僅僅只是一個介面,具體的實現有各個資料庫廠商提供,正式因為JDBC是面向介面程式設計,所以我們如果現在要連線的不是mysql資料庫,而是Oracle或者其他的資料庫,那麼我們只需要匯入其對應的驅動包,然後把連線資訊修改一下即可。下面我們就做個實驗,嘗試連線一下資料庫,

首先,在使用sql developer連線資料庫,在Oracle中建立一個和mysql一樣的資料庫。

然後在專案中匯入oracle的驅動包。

attcontent/21d664ff-e1d5-4913-9509-9db7e4071a53.png

我們把連線的基本資訊封裝到變數中。連線oracle的變數值是:

1

2

3

4

5

// oracle 連線資訊

private String driver = "oracle.jdbc.driver.OracleDriver";

private String url = "jdbc:oracle:thin:@192.168.11.23:1521:orcl";

private String dbusername = "root";

private String dbpass = "root";

我們並不需要使用驅動包的實現了,只需要修改這些變數值的資訊即可,

1

2

3

4

5

// oracle 連線資訊

private String driver = "oracle.jdbc.driver.OracleDriver";

private String url = "jdbc:oracle:thin:@192.168.11.23:1521:orcl";

private String dbusername = "root";

private String dbpass = "root";

執行嘗試能否插入資料。發現數據已經正常插入了。可見使用JDBC更好資料庫幾乎不需要修改什麼程式碼就可以了。

如果需要重新連線mysql資料庫那麼把上面的變數值重新設定為連線mysql的的資訊即可。

1

2

3

4

5

// mysql連線資訊

private String driver = "com.mysql.jdbc.Driver";

private String url = "jdbc:mysql://192.168.11.144/first?useUnicode=true&characterEncoding=utf8";

private String dbusername = "root";

private String dbpass = "123456";

當然正在要能夠不修改任何一行程式碼就可以做到遷移資料庫事實上也沒有這麼簡單,因為不同的資料庫的sql語言還是有區別的,那如何才能做到無縫的遷移資料庫呢,這個問題我們再以後學習hibernate框架時才能解決了。

連線其他資料庫的連線資訊程式碼如下:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

1、Oracle8/8i/9i資料庫(thin模式) 

Class.forName("oracle.jdbc.driver.OracleDriver");

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 "); 

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"); 

String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=mydb"

//mydb為資料庫 

String user="sa"

String password=""

Connection conn= DriverManager.getConnection(url,user,password); 

4、Sybase資料庫 

Class.forName("com.sybase.jdbc.SybDriver"); 

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"); 

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("com.mysql.jdbc.Driver"); 

String url ="jdbc:mysql://localhost/myDB?useUnicode=true&characterEncoding=utf8"

//myDB為資料庫名 

Connection conn= DriverManager.getConnection(url,usr,password); 

7、PostgreSQL資料庫 

Class.forName("org.postgresql.Driver"); 

String url ="jdbc:postgresql://localhost/myDB" 

//myDB為資料庫名 

String user="myuser"

String password="mypassword"

Connection conn= DriverManager.getConnection(url,user,password);