JDBC完成增、删、改、查

JDBC的增删改操作

 

    public void func1() throws ClassNotFoundException, SQLException {
        /*
         * 一、得到Connection 1.准备四大参数 2.加载驱动类 3.得到Connection
         */
        // 准备四大参数
        String driverClassName = "com.mysql.jdbc.Driver";
        String url = "jdbc:mysql://localhost:3306/student";
        String username = "root";
        String password = "123";
        // 加载驱动类
        Class.forName(driverClassName);
        // 使用DriverManger得到Connection
        Connection con = DriverManager.getConnection(url, username, password);
        /*
         * 二、对数据库做增删改 1.通过Connection对象创建Statement > Statement语句的发送器,它的功能就是向数据库发生sql语句!
         * 2.调用它的int executeUpdate(String sql),它可以发送DML、DDL
         */
        // 得到Statement
        Statement statement = con.createStatement();
        // 发送sql语句
        // String sql = "INSERT INTO student1 VALUES('周芷若',18)";
        // String sql = "CREATE TABLE test(id INT,name VARCHAR(50),age INT,gender
        // VARCHAR(50))";
        // String sql = "INSERT INTO test VALUES('001','郑强',18,'male')";
        // String sql = "INSERT INTO test VALUES('002','赤名莉香',18,'female')";
        // String sql = "UPDATE test SET name='周芷若',age=20,gender='female' WHERE
        // id='001'";
        String sql = "DELETE FROM test";
        statement.executeUpdate(sql);
    }

 

JDBC的查询操作

public void func2() throws ClassNotFoundException, SQLException {
        /*
         * 一、得到Connection 二、得到Statement,发送select语句 三、对查询返回的“表格”进行解析!
         */
        // 得到Connection
        String driverClassName = "com.mysql.jdbc.Driver";
        String url = "jdbc:mysql://localhost:3306/student";
        String username = "root";
        String password = "123";
        // 加载驱动类
        Class.forName(driverClassName);
        Connection con = DriverManager.getConnection(url, username, password);
        // 得到Statement,执行select语句
        Statement stmt = con.createStatement();
        // 调用Statement的ResultSet rs = executeQuery(String querySql)、
        String sql = "SELECT * FROM test";
        ResultSet rs = stmt.executeQuery(sql);
        // 解析ResultSet
        // 把行光标移动到第一行,可以调用next()方法完成!
        while (rs.next()) {// 把光标向下移动一行,并判断下一行是否存在!
            int stuid = rs.getInt(1);//通过列编号来获取该列的值
            String stuname = rs.getString("name");//通过列名称来获取该列的值
            int stuage = rs.getInt("age");
            String gender  = rs.getString("gender");
            System.out.println(stuid+","+stuname+","+stuage+","+gender);
        }
        //关闭资源(倒关)
        rs.close();
        stmt.close();
        con.close();//这个必须关闭,不关就死!
    }
}
posted @ 2018-08-16 18:08  cmlx  阅读(143)  评论(0)    收藏  举报