Java連接MySQL數據庫——含步驟和代碼
阿新 • • 發佈:2018-06-27
pac 取數據 tac out localhost gets -m () simple
轉自微博:http://www.cnblogs.com/centor/p/6142775.html
工具:eclipse
MySQL5.6
MySQL連接驅動:mysql-connector-java-5.1.27.jar(鏈接: https://pan.baidu.com/s/1MmFZ9Hve6rV0tlryM3raeA 密碼: q74m)
加載驅動:
1. 在工程目錄中創建lib文件夾,將下載好的JDBC放到該文件夾下,如下圖所示:
2. 右鍵工程名,在java build path中的Libraries分頁中選擇Add JARs...,選擇剛才添加的JDBC,如下圖:
數據包準備:
在數據庫sqltestdb中創建如下數據表emp:
CREATE TABLE emp( empno INT(4) PRIMARY KEY, ename VARCHAR(10), job VARCHAR(9), hiredate DATE, sal FLOAT(7,2) ) ;
添加數據:
連接數據庫並讀取數據:
數據庫名稱:sqltestdb
數據包名稱:emp
端口號:3306
用戶名:root
密碼:root
1 package sqldemo; 2 3 import java.sql.Connection; 4 import java.sql.DriverManager; 5 import java.sql.ResultSet; 6 import java.sql.SQLException; 7 import java.sql.Statement; 8 9 public class main { 10 11 public static void main(String[] args) { 12 //聲明Connection對象 13Connection con; 14 //驅動程序名 15 String driver = "com.mysql.jdbc.Driver"; 16 //URL指向要訪問的數據庫名mydata 17 String url = "jdbc:mysql://localhost:3306/sqltestdb"; 18 //MySQL配置時的用戶名 19 String user = "root"; 20 //MySQL配置時的密碼 21 String password = "123456"; 22 //遍歷查詢結果集 23 try { 24 //加載驅動程序 25 Class.forName(driver); 26 //1.getConnection()方法,連接MySQL數據庫!! 27 con = DriverManager.getConnection(url,user,password); 28 if(!con.isClosed()) 29 System.out.println("Succeeded connecting to the Database!"); 30 //2.創建statement類對象,用來執行SQL語句!! 31 Statement statement = con.createStatement(); 32 //要執行的SQL語句 33 String sql = "select * from emp"; 34 //3.ResultSet類,用來存放獲取的結果集!! 35 ResultSet rs = statement.executeQuery(sql); 36 System.out.println("-----------------"); 37 System.out.println("執行結果如下所示:"); 38 System.out.println("-----------------"); 39 System.out.println("姓名" + "\t" + "職稱"); 40 System.out.println("-----------------"); 41 42 String job = null; 43 String id = null; 44 while(rs.next()){ 45 //獲取stuname這列數據 46 job = rs.getString("job"); 47 //獲取stuid這列數據 48 id = rs.getString("ename"); 49 50 //輸出結果 51 System.out.println(id + "\t" + job); 52 } 53 rs.close(); 54 con.close(); 55 } catch(ClassNotFoundException e) { 56 //數據庫驅動類異常處理 57 System.out.println("Sorry,can`t find the Driver!"); 58 e.printStackTrace(); 59 } catch(SQLException e) { 60 //數據庫連接失敗異常處理 61 e.printStackTrace(); 62 }catch (Exception e) { 63 // TODO: handle exception 64 e.printStackTrace(); 65 }finally{ 66 System.out.println("數據庫數據成功獲取!!"); 67 } 68 } 69 70 }
運行結果:
增加、刪除和修改數據:
增加數據:
String name; String id; PreparedStatement psql; ResultSet res; //預處理添加數據,其中有兩個參數--“?” psql = con.prepareStatement("insert into emp (empno,ename,job,hiredate,sal) " + "values(?,?,?,?,?)"); psql.setInt(1, 3212); //設置參數1,創建id為3212的數據 psql.setString(2, "王剛"); //設置參數2,name 為王剛 psql.setString(3, "總裁"); DateFormat dateFormat2 = new SimpleDateFormat("yyyy-MM-dd"); Date myDate2 = dateFormat2.parse("2010-09-13"); psql.setDate(4,new java.sql.Date(myDate2.getTime())); psql.setFloat(5, (float) 2000.3); psql.executeUpdate(); //執行更新
更新數據:
PreparedStatement psql; //預處理更新(修改)數據,將王剛的sal改為5000.0 psql = con.prepareStatement("update emp set sal = ? where ename = ?"); psql.setFloat(1,(float) 5000.0); psql.setString(2,"王剛"); psql.executeUpdate();
刪除數據:
PreparedStatement psql; //預處理刪除數據 psql = con.prepareStatement("delete from emp where sal > ?"); psql.setFloat(1, 4500); psql.executeUpdate(); psql.close();
Java連接MySQL數據庫——含步驟和代碼