激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

服務器之家 - 編程語言 - JAVA教程 - Java 通過JDBC連接Mysql數據庫

Java 通過JDBC連接Mysql數據庫

2020-01-16 16:17hebedich JAVA教程

本文給大家詳細介紹了java如何使用JDBC連接Mysql的方法以及驅動包的安裝,最后給大家附上了java通過JDBC連接其他各種數據庫的方法,有需要的小伙伴可以參考下。

JDBC(Java Data Base Connectivity,java數據庫連接)是一種用于執行SQL語句的Java API,可以為多種關系數據庫提供統一訪問,它由一組用Java語言編寫的類和接口組成。JDBC提供了一種基準,據此可以構建更高級的工具和接口,使數據庫開發人員能夠編寫數據庫應用程序。

如果要使用數據庫就要添加數據庫的驅動,不同的數據庫有不用的驅動,這里就不一一說明,添加jar程序驅動包的方法就不在這里解釋,

下面是一個實例去介紹mysql數據庫的連接,其它數據庫的方法也是差不多的。

?
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
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Connection;
import java.sql.Statement;
public class MysqlDemo {
  public static void main(String[] args) throws Exception {
    Connection conn = null;
    String sql;
    // MySQL的JDBC URL編寫方式:jdbc:mysql://主機名稱:連接端口/數據庫的名稱?參數=值
    // 避免中文亂碼要指定useUnicode和characterEncoding
    // 執行數據庫操作之前要在數據庫管理系統上創建一個數據庫,名字自己定,
    // 下面語句之前就要先創建javademo數據庫
    String url = "jdbc:mysql://localhost:3306/javademo?"
        + "user=root&password=root&useUnicode=true&characterEncoding=UTF8";
    try {
      // 之所以要使用下面這條語句,是因為要使用MySQL的驅動,所以我們要把它驅動起來,
      // 可以通過Class.forName把它加載進去,也可以通過初始化來驅動起來,下面三種形式都可以
      Class.forName("com.mysql.jdbc.Driver");// 動態加載mysql驅動
      // or:
      // com.mysql.jdbc.Driver driver = new com.mysql.jdbc.Driver();
      // or:
      // new com.mysql.jdbc.Driver();
      System.out.println("成功加載MySQL驅動程序");
      // 一個Connection代表一個數據庫連接
      conn = DriverManager.getConnection(url);
      // Statement里面帶有很多方法,比如executeUpdate可以實現插入,更新和刪除等
      Statement stmt = conn.createStatement();
      sql = "create table student(NO char(20),name varchar(20),primary key(NO))";
      int result = stmt.executeUpdate(sql);// executeUpdate語句會返回一個受影響的行數,如果返回-1就沒有成功
      if (result != -1) {
        System.out.println("創建數據表成功");
        sql = "insert into student(NO,name) values('2012001','陶偉基')";
        result = stmt.executeUpdate(sql);
        sql = "insert into student(NO,name) values('2012002','周小俊')";
        result = stmt.executeUpdate(sql);
        sql = "select * from student";
        ResultSet rs = stmt.executeQuery(sql);// executeQuery會返回結果的集合,否則返回空值
        System.out.println("學號\t姓名");
        while (rs.next()) {
          System.out
              .println(rs.getString(1) + "\t" + rs.getString(2));// 入如果返回的是int類型可以用getInt()
        }
      }
    } catch (SQLException e) {
      System.out.println("MySQL操作錯誤");
      e.printStackTrace();
    } catch (Exception e) {
      e.printStackTrace();
    } finally {
      conn.close();
    }
  }
}

另附上JDBC連接各種數據庫的方法(經典)

1)連接Oracle 8/8i/9i/10g/11g(thin模式)

?
1
2
3
4
5
6
7
8
9
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數據庫

?
1
2
3
4
5
6
7
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數據庫

?
1
2
3
4
5
6
7
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數據庫

?
1
2
3
4
5
6
7
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數據庫

?
1
2
3
4
5
6
7
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數據庫

?
1
2
3
4
5
6
7
8
9
10
11
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);

 

延伸 · 閱讀

精彩推薦
Weibo Article 1 Weibo Article 2 Weibo Article 3 Weibo Article 4 Weibo Article 5 Weibo Article 6 Weibo Article 7 Weibo Article 8 Weibo Article 9 Weibo Article 10 Weibo Article 11 Weibo Article 12 Weibo Article 13 Weibo Article 14 Weibo Article 15 Weibo Article 16 Weibo Article 17 Weibo Article 18 Weibo Article 19 Weibo Article 20 Weibo Article 21 Weibo Article 22 Weibo Article 23 Weibo Article 24 Weibo Article 25
主站蜘蛛池模板: 国产妇女乱码一区二区三区 | 九九热精品免费视频 | 在线播放黄色网址 | 中文区永久区 | 99ri在线| 久久精品站 | 中国av免费在线观看 | 欧美国产日韩在线 | www亚洲成人 | 毛片免费观看视频 | 午夜视频福利 | 亚洲成在人 | 羞羞视频免费观看入口 | 男女无套免费视频 | 91精品久久久久久久 | 欧美精品激情在线 | 国产二区三区在线播放 | 国产一及毛片 | 亚洲一区二区三区91 | 一区二区三区在线播放视频 | 国产免费一区二区三区在线能观看 | 孕妇体内谢精满日本电影 | 欧美精品一区自拍a毛片在线视频 | 精品国产96亚洲一区二区三区 | 久久精品视频黄色 | 久久久久国产一区二区三区不卡 | 国产99久久久久久免费看农村 | 奇米影视在线 | 久久sp| 日本道中文字幕 | 久久国产精品一区 | a级毛片免费观看在线播放 日本aaa一级片 | 亚洲精品 欧美 | 国产一级二级毛片 | 97黄色网| 黄色成人小视频 | 成人毛片免费看 | 国产精品自拍av | 国产一级做a | 黄色片免费在线播放 | 成人国产精品齐天大性 |