如何用Eclipse串連MySQL資料庫(傻瓜篇)

來源:互聯網
上載者:User

本來不想寫這麼簡單人文章,在百度上搜尋我這個標題,完全符合標題的一大堆。但我按照那些文章搗鼓了很久,就是不行。

我的環境:MySQL:mysql-essential-5.1.51-win32

jdbc驅動:我已經上傳到csdn上一個:http://download.csdn.net/source/3451945

Eclipse:任意版本,免費的,可以百度的到。

1.MySQL安裝,不會的朋友可以看串連:http://www.duote.com/tech/1/2430_1.html

下面來建立一個資料:

 
  1. mysql>CREATE DATABASE test;   //建立一個資料庫 
  2. mysql>use  test;  //指定test為當前要操作的資料庫 
  3. mysql>CREATE TABLE user (name VARCHAR(20),password VARCHAR(20));   //建立一個表user,設定兩個欄位。 
  4. mysql>INSERT INTO user VALUES('huzhiheng','123456'); //插入一條資料到表中

2.開啟Eclipse,建立一個項目(my),

操作:右鍵點擊my--->build Path--->add external Archiver...選擇jdbc驅動,點擊確定。

我的項目列表:

3.驅動已經匯入,下面我們來寫一個程式驗證一下

 
  1. import java.sql.*; 
  2. public class MysqlJdbc { 
  3.   public static void main(String args[]) { 
  4.     try { 
  5.       Class.forName("com.mysql.jdbc.Driver");     //載入MYSQL JDBC驅動程式    
  6.       //Class.forName("org.gjt.mm.mysql.Driver"); 
  7.      System.out.println("Success loading Mysql Driver!"); 
  8.     } 
  9.     catch (Exception e) { 
  10.       System.out.print("Error loading Mysql Driver!"); 
  11.       e.printStackTrace(); 
  12.     } 
  13.     try { 
  14.       Connection connect = DriverManager.getConnection( 
  15.           "jdbc:mysql://localhost:3306/test","root","198876"); 
  16.            //串連URL為   jdbc:mysql//伺服器位址/資料庫名  ,後面的2個參數分別是登陸使用者名稱和密碼 
  17.  
  18.       System.out.println("Success connect Mysql server!"); 
  19.       Statement stmt = connect.createStatement(); 
  20.       ResultSet rs = stmt.executeQuery("select * from user"); 
  21.                                                               //user 為你表的名稱 
  22.       while (rs.next()) { 
  23.         System.out.println(rs.getString("name")); 
  24.       } 
  25.     } 
  26.     catch (Exception e) { 
  27.       System.out.print("get data error!"); 
  28.       e.printStackTrace(); 
  29.     } 
  30.   } 

點擊運行程式:

 
  1. Success loading Mysql Driver! 
  2. Success connect Mysql server! 
  3. huzhiheng  

出現上面結果,說明你串連資料庫成功。

4.可以查看到MySQL裡面的內容,那我們是不是想往MySQL中插入資料呢。

下面的例子,往MySQL的user表中插入100條資料

 
  1. import java.sql.*; 
  2.  
  3. public class Myjproject { 
  4.  public static void main(String args[]) 
  5.  { 
  6.      try { 
  7.           Class.forName("com.mysql.jdbc.Driver");     //載入MYSQL JDBC驅動程式    
  8.           //Class.forName("org.gjt.mm.mysql.Driver"); 
  9.          System.out.println("Success loading Mysql Driver!"); 
  10.         } 
  11.         catch (Exception e) { 
  12.           System.out.print("Error loading Mysql Driver!"); 
  13.           e.printStackTrace(); 
  14.         } 
  15.   try { 
  16.       Connection connect = DriverManager.getConnection( "jdbc:mysql://localhost:3306/test","root","198876"); 
  17.       
  18.        int num=100; 
  19.        PreparedStatement Statement=connect.prepareStatement("INSERT INTO user VALUES(?,?)"); 
  20.        for(int i=0;i<num;i++)        //定義個100次的迴圈,往表裡插入一百條資訊。 
  21.       { 
  22.            Statement.setString(1,"chongshi"+i); 
  23.            Statement.setString(2,"bo"+i); 
  24.            Statement.executeUpdate(); 
  25.    } 
  26.  
  27.   // } catch (ClassNotFoundException e) { 
  28.     // TODO Auto-generated catch block 
  29.    // System.out.println("An error has occurred:"+e.toString()); 
  30.   //  e.printStackTrace(); 
  31.    }catch(SQLException e) 
  32.    { 
  33.    } 
  34.  } 

5.下面我們開啟MySQL資料庫進行查看

 
  1. mysql> show tatabases;  //查看所資料庫 
  2. mysql> use  test;    //使test為當前要操作的資料庫 
  3. mysql> show tables; //查看當前資料庫的所有表 
  4. view sourceprint? 
  5. mysql> select *from user;  //查看當前表user)的所有資訊 

注意:如果不能正常串連你的資料庫,請檢查你代碼中,驅動、使用者名稱、密碼、表等資訊是否對應無誤,不要把別人的代碼直接複製過來,看也不看就用。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.