Java-mysql-000-連接、插入、查詢、修改、刪除

Java-mysql-000-連接、插入、查詢、修改、刪除-2020-6-25

一、connect.java

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
public class connect {
 
    public static void main(String[] args) {
        //聲明Connection對象
        Connection con;
        //驅動程序名
        String driver = "com.mysql.cj.jdbc.Driver";
        //URL指向要訪問的數據庫名mysql(此處的test是你所javatest的那個database)
        String url = "jdbc:mysql://localhost:3306/javatest?useSSL=false&serverTimezone=UTC";
        //MySQL配置時的用戶名
        String user = "root";
        //MySQL配置時的密碼
        String password = "123456789";
        //遍歷查詢結果集
        try {
            //加載驅動程序
            Class.forName(driver);
            //1.getConnection()方法,連接MySQL數據庫!!
            con = DriverManager.getConnection(url,user,password);
            if(!con.isClosed())
                System.out.println("Succeeded connecting to the Database!");
            //2.創建statement類對象,用來執行SQL語句!!
            Statement statement = con.createStatement();
            //要執行的SQL語句
            String sql = "select * from student";
            //3.ResultSet類,用來存放獲取的結果集!!
            ResultSet rs = statement.executeQuery(sql);
            System.out.println("執行結果如下所示:");  
            System.out.println("-----------------");  
            System.out.println("姓名" + "\t" + "年齡"+ "\t" + "職位");  
            System.out.println("-----------------");  
             
            String name = null;
            String position = null;
            int age=0;
            while(rs.next()){
                //獲取name這列數據
            	 name = rs.getString("name");
                //獲取age這列數據
                age=rs.getInt("age");
                //獲取position這列數據               
                position = rs.getString("position");
                //輸出結果
                System.out.println(name + "\t" + age + "\t" + position);
            }
            rs.close();
            con.close();
        } catch(ClassNotFoundException e) {   
            //數據庫驅動類異常處理
            System.out.println("Sorry,can`t find the Driver!");   
            e.printStackTrace();   
            } catch(SQLException e) {
            //數據庫連接失敗異常處理
            e.printStackTrace();  
            }catch (Exception e) {
            // TODO: handle exception
            e.printStackTrace();
        }finally{
            System.out.println("數據庫數據成功獲取!!");
        }
    }
}

二、insert.java

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class insert {
    public static void main(String[] args) {
        try {
             // 加載數據庫驅動
            Class.forName("com.mysql.cj.jdbc.Driver");
            // 聲明數據庫view的URL
            String url = "jdbc:mysql://localhost:3306/javatest?useSSL=false&serverTimezone=UTC";
            // 數據庫用戶名
            String user = "root"; 
            // 數據庫密碼
            String password = "123456789"; 
            // 建立數據庫連接,獲得連接對象conn
            Connection con = DriverManager.getConnection(url, user, password);
            String sql = "insert into student (name,age,position) values(?,?,?)"; // 生成一條sql語句
            // 創建一個Statment對象
            PreparedStatement ps = con.prepareStatement(sql);
            // 爲sql語句中第一個問號賦值
            ps.setString(1, "李四");
            // 爲sql語句中第二個問號賦值
            ps.setInt(2, 123);
            // 爲sql語句中第三個問號賦值
            ps.setString(3, "插入");
            // 爲sql語句中第四個問號賦值
            // 執行sql語句
            ps.executeUpdate();
            // 關閉數據庫連接對象
            con.close();
            System.out.println("數據變化");
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }

}

三、delete.java

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class delete {
	  public static void main(String[] args) {
	        try {
	             // 加載數據庫驅動
	            Class.forName("com.mysql.cj.jdbc.Driver");
	            // 聲明數據庫view的URL
	            String url = "jdbc:mysql://localhost:3306/javatest?useSSL=false&serverTimezone=UTC";
	            // 數據庫用戶名
	            String user = "root"; 
	            // 數據庫密碼
	            String password = "123456789"; 
	            // 建立數據庫連接,獲得連接對象conn
	            Connection con = DriverManager.getConnection(url, user, password);
	            String sql = "delete from student where age = ?";
	            PreparedStatement stmt = con.prepareStatement(sql);
	            stmt.setInt(1, 123);
	            int result =stmt.executeUpdate();// 返回值代表收到影響的行數
	            if(result>0) {
	                System.out.println("刪除成功");
	            }else {
	                System.out.println("刪除失敗");
	            }
	            con.close();
	            System.out.println("數據變化");
	        } catch (ClassNotFoundException e) {
	            // TODO Auto-generated catch block
	            e.printStackTrace();
	        } catch (SQLException e) {
	            // TODO Auto-generated catch block
	            e.printStackTrace();
	        }
	    }
}

四、update.java

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;

public class update {
	public static void main(String[] args) {
        try {
             // 加載數據庫驅動
            Class.forName("com.mysql.cj.jdbc.Driver");
            // 聲明數據庫view的URL
            String url = "jdbc:mysql://localhost:3306/javatest?useSSL=false&serverTimezone=UTC";
            // 數據庫用戶名
            String user = "root"; 
            // 數據庫密碼
            String password = "123456789"; 
            // 建立數據庫連接,獲得連接對象conn
            Connection con = DriverManager.getConnection(url, user, password);
            String sql = "update student set name = ? where age = ?";
            PreparedStatement stmt = con.prepareStatement(sql);
            stmt.setString(1, "小云");
            stmt.setInt(2, 12);
            int result =stmt.executeUpdate();// 返回值代表收到影響的行數
            if(result>0) {
                System.out.println("修改成功");
            }else {
                System.out.println("修改失敗");
            }
            con.close();
            System.out.println("數據變化");
        } catch (ClassNotFoundException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        } catch (SQLException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章