java連接MySql數據庫和增刪改查代碼

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;



public class JdbcAction {
	 // 創建靜態全局變量  
    static Connection conn;  
  
    static Statement st;  
    /* 獲取數據庫連接的函數*/  
    public static Connection getConnection() {  
        Connection con = null;  //創建用於連接數據庫的Connection對象  
        try {  
            Class.forName("com.mysql.jdbc.Driver");// 加載Mysql數據驅動  
              
            con = DriverManager.getConnection(  
                    "jdbc:mysql://localhost:3306/pc", "root", "123456");// 創建數據連接  
              
        } catch (Exception e) {  
            System.out.println("數據庫連接失敗" + e.getMessage());  
        }  
        return con; //返回所建立的數據庫連接  
    }  
    
	public static void insert(Video v){
		conn = getConnection(); // 首先要獲取連接,即連接到數據庫  
	    try {  
	        String sql = "INSERT INTO video(itemGuid, itemDate, itemEnUrl,itemEnType, itemAuthor, " +
	        		"itemKeyword,itemDuration,itemDesc,itemLink,itemTitle )"  
	                + " VALUES ('"+v.getItemGuid()+"','"+v.getItemDate()+"','"+v.getItemEnUrl()+"','"+v.getItemEnType()+
	                "','"+v.getItemAuthor()+"','"+v.getItemKeyword()+"','"+v.getItemDuration()+"','"+v.getItemDesc()+"','"+
	                v.getItemLink()+"','"+v.getItemTitle()+"')";  // 插入數據的sql語句  
	        System.out.println("sql="+sql);
	        st = (Statement) conn.createStatement();    // 創建用於執行靜態sql語句的Statement對象  
	          
	        int count = st.executeUpdate(sql);  // 執行插入操作的sql語句,並返回插入數據的個數  
	          
	        System.out.println("向video表中插入 " + count + " 條數據"); //輸出插入操作的處理結果  
	          
	        conn.close();   //關閉數據庫連接  
	          
	    } catch (SQLException e) {  
	        System.out.println("插入數據失敗" + e.getMessage());  
	    }  
	}
	
	public static boolean query(String guid) {  
	    conn = getConnection(); //同樣先要獲取連接,即連接到數據庫  
	    try {  
	        String sql = "select * from video where itemGuid="+guid;     // 查詢數據的sql語句  
	        st = (Statement) conn.createStatement();    //創建用於執行靜態sql語句的Statement對象,st屬局部變量  
	          
	        ResultSet rs = st.executeQuery(sql);    //執行sql查詢語句,返回查詢數據的結果集  
	        while (rs.next()) { // 判斷是否還有下一個數據  
	            return true ;
	        }
	        conn.close();   //關閉數據庫連接  
	          
	    } catch (SQLException e) {  
	        System.out.println("查詢數據失敗");  
	    }
		return false;  
	}  
	
	public static List<Video> findAll() {  
	    conn = getConnection(); //同樣先要獲取連接,即連接到數據庫  
	    List<Video> vl = new ArrayList<Video>() ;
	    try {  
	        String sql = "select * from video where state=400";     // 查詢數據的sql語句  
	        st = (Statement) conn.createStatement();    //創建用於執行靜態sql語句的Statement對象,st屬局部變量  
	        ResultSet rs = st.executeQuery(sql);    //執行sql查詢語句,返回查詢數據的結果集  
	        while (rs.next()) { // 判斷是否還有下一個數據  
	        	String itemGuid = rs.getString("itemGuid");  
                String itemDate = rs.getString("itemDate");  
                String itemTitle = rs.getString("itemTitle");  
                String itemLink = rs.getString("itemLink");  
                String itemDesc = rs.getString("itemDesc");  
                String itemDuration = rs.getString("itemDuration");  
                
                String itemKeyword = rs.getString("itemKeyword");  
                String itemAuthor = rs.getString("itemAuthor");  
                String itemEnType = rs.getString("itemEnType");  
                String itemEnUrl = rs.getString("itemEnUrl");  
                int state = rs.getInt("state");  
                Video v = new Video() ;
                v.setItemAuthor(itemAuthor) ;
                v.setItemDate(itemDate) ;
                v.setItemDesc(itemDesc) ;
                v.setItemDuration(itemDuration) ;
                v.setItemEnType(itemEnType) ;
                v.setItemEnUrl(itemEnUrl) ;
                v.setItemGuid(itemGuid) ;
                v.setItemKeyword(itemKeyword) ;
                v.setItemLink(itemLink) ;
                v.setItemTitle(itemTitle) ;
                v.setState(state) ;
                vl.add(v) ;
	        }
	        conn.close();   //關閉數據庫連接  
	          
	    } catch (SQLException e) {  
	        System.out.println("查詢數據失敗");  
	    }
	    return vl ;
	}  
	
	/* 更新符合要求的記錄,並返回更新的記錄數目*/  
    public static void update(Video v) {  
        conn = getConnection(); //同樣先要獲取連接,即連接到數據庫  
        try {  
            String sql = "update video set state=402 where itemGuid="+v.getItemGuid();// 更新數據的sql語句  
              
            st = (Statement) conn.createStatement();    //創建用於執行靜態sql語句的Statement對象,st屬局部變量  
              
            int count = st.executeUpdate(sql);// 執行更新操作的sql語句,返回更新數據的個數  
              
            System.out.println("video表中更新 " + count + " 條數據");      //輸出更新操作的處理結果  
              
            conn.close();   //關閉數據庫連接  
              
        } catch (SQLException e) {  
            System.out.println("更新數據失敗");  
        }  
    }  
}

發佈了33 篇原創文章 · 獲贊 4 · 訪問量 89萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章