小学生学习Java的JDBC

JDBC

是java提供的一套类和接口,是连接数据库一套规范
这里写图片描述

JDBC操作数据库的步骤

1.注册驱动 registerDriver(Driver driver)
加载驱动类 Driver 是数据库厂商实现的
2.获取数据库连接对象
getConnection(url,user,password)
3.通过连接对象获取sql语句的执行对象
createStatement()
4.通过Statement对象 来执行sql语句
executeUpdate(sql) 返回值int
执行DML语句和DDL语句
executeQuery(sql) 返回ResultSet
执行DQL语句
5.处理执行sql后得到的结果集
6.关闭资源(调用close方法)

插入数据

public static void main(String[] args) throws SQLException, ClassNotFoundException {
        // 注册驱动
        // 如果这么注册 相当于注册两遍  Driver类的源码中有静态代码块  并且代码块中已经注册了一次
        // DriverManager.registerDriver(new Driver());
        // 该如何正确注册驱动?
        // 利用反射注册驱动
        Class.forName("com.mysql.jdbc.Driver");
        // 获取连接对象
        // 数据库的连接地址    jdbc:mysql://主机IP地址:数据库的端口号/数据库的名
        String url = "jdbc:mysql://localhost:3306/mydb2";  
        String user = "root";
        String password = "123456";
        Connection connection = DriverManager.getConnection(url, user, password);
        // System.out.println(connection);
        // 通过连接对象获取sql语句的执行对象
        Statement statement = connection.createStatement();
        // 执行sql语句
        // 插入一条数据
        String sql = "insert into goods" + "(sname,sprice,sdesc)" + "values ('手机',8000,'一台高级手机')";
        // 返回值是受影响的行数
        int row = statement.executeUpdate(sql);
        System.out.println(row);
        // 关闭资源
        // 关闭连接对象
        connection.close();
        // 关闭执行sql语句的对象
        statement.close();

    }

查询数据

public static void main(String[] args) throws ClassNotFoundException, SQLException  {
        Class.forName("com.mysql.jdbc.Driver");
        String url = "jdbc:mysql://localhost:3306/mydb2";  
        String user = "root";
        String password = "123456";
        Connection connection = DriverManager.getConnection(url, user, password);
        Statement statement = connection.createStatement();
        // 执行sql语句
        String sql = "select sname,sid,sprice,sdesc from goods";
        ResultSet resultSet = statement.executeQuery(sql);
        // 处理结果集
        while(resultSet.next()) {   
            // 如果使用列的索引   注意:从1开始       
            // 如果不使用 * 直接使用字段  那么顺序就是你sql语句中 使用的顺序          
            // 获取数据方式2 直接使用字段名
            String sname = resultSet.getString("sname");
            int sid = resultSet.getInt("sid");
            double sprice = resultSet.getDouble("sprice");
            String sdesc = resultSet.getString("sdesc");
            System.out.println( sid + sname + sprice + sdesc );     
        }
        // 关闭资源
        connection.close();
        statement.close();
        resultSet.close();

    }

猜你喜欢

转载自blog.csdn.net/zmw1224/article/details/80697661