JDBC連線MySQL資料庫的方法和例項

weixin_30639719發表於2018-06-29
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();
        }
 
    }
 
}

轉載於:https://www.cnblogs.com/yxdmoodoo/p/9244025.html

相關文章