美文网首页
JDBC进阶1——对数据库表进行增删改查

JDBC进阶1——对数据库表进行增删改查

作者: 从0到1的小姐姐 | 来源:发表于2018-05-17 08:53 被阅读0次

    《Java从入门到精通》20章20.4.7可以实现对数据进行增删改查
    功能:对test库中tb_stu表进行查询,增删改
    代码:

    import java.sql.*;
    
    public class Renewal { // 创建类
        static Connection con; // 声明Connection对象
        static PreparedStatement sql; // 声明PreparedStatement对象
        static ResultSet res; // 声明ResultSet对象
    
        public Connection getConnection() {
            try {
                Class.forName("com.mysql.jdbc.Driver");
                con = DriverManager.getConnection("jdbc:mysql:"
                        + "//127.0.0.1:3306/test", "root", "123456");
            } catch (Exception e) {
                e.printStackTrace();
            }
            return con;
        }
    
        public static void main(String[] args) {
            Renewal c = new Renewal(); // 创建本类对象
            con = c.getConnection(); // 调用连接数据库方法
            try {
                sql = con.prepareStatement("select * from tb_stu"); // 查询数据库
                res = sql.executeQuery(); // 执行SQL语句
                System.out.println("执行增加、修改、删除前数据:");
                while (res.next()) {
                    String id = res.getString(1);
                    String name = res.getString("name");
                    String sex = res.getString("sex");
                    String birthday = res.getString("birthday"); // 遍历查询结果集
                    System.out.print("编号:" + id);
                    System.out.print(" 姓名:" + name);
                    System.out.print(" 性别:" + sex);
                    System.out.println(" 生日:" + birthday);
                }
                sql = con.prepareStatement("insert into tb_stu(name,sex,birthday) values(?,?,?)");
                sql.setString(1, "张一"); // 预处理添加数据
                sql.setString(2, "女");
                sql.setString(3, "2012-12-1");
                sql.executeUpdate();
                sql = con.prepareStatement("update tb_stu set birthday "
                        + "= ? where id = ? ");
                sql.setString(1, "2012-12-02"); // 更新数据
                sql.setInt(2, 1); // 更新数据
                sql.executeUpdate();
                Statement stmt = con.createStatement();
                stmt.executeUpdate("delete from tb_stu where id = 1");
                // 查询修改数据后的tb_stu表中数据
                sql = con.prepareStatement("select * from tb_stu");
                res = sql.executeQuery(); // 执行SQL语句
                System.out.println("执行增加、修改、删除后的数据:");
                while (res.next()) {
                    String id = res.getString(1);
                    String name = res.getString("name");
                    String sex = res.getString("sex");
                    String birthday = res.getString("birthday");
                    System.out.print("编号:" + id);
                    System.out.print(" 姓名:" + name);
                    System.out.print(" 性别:" + sex);
                    System.out.println(" 生日:" + birthday);
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    
    

    问题:
    1.自己得提前建立好和这个代码字段一致的MYSQL数据库和表
    2.上述代码可以运行,但是存在的一个小的问题就是:只有在查询的时候有返回值,在增删改的时候不能显示状态,导致不知道是否操作成功,所以将对上述代码进行改进

    相关文章

      网友评论

          本文标题:JDBC进阶1——对数据库表进行增删改查

          本文链接:https://www.haomeiwen.com/subject/pnzudftx.html