2021/11/19

用java通过JDBC连接数据库,实现数据的增删改查

package JDBC;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Connection;
import java.sql.SQLException;
import java.sql.Statement;


public class JDBCDemo {
    private static final String URL = "jdbc:mysql://localhost:3306/school";
    private static final String USENAME = "root";
    private static final String PWD = "yang";
    
    public static void update() {//实现增删改
        Connection connection = null;
        Statement stmt = null;
        ResultSet rs = null;
        try{
            //a.加载具体的驱动类,注册JDBC驱动,因为我用的mysql是8.0.26版本的所以驱动类不太一样
            Class.forName("com.mysql.cj.jdbc.Driver");
            //b.与数据表建立连接
            connection = DriverManager.getConnection(URL, USENAME, PWD);
            //c.发送sql,执行增删改
            stmt = connection.createStatement();
            //String sql = "insert into yx values(3,'ww',20,'M')";
            //String sql = "update yx set name='GGG' where age=20";//where后是为了找到想改的数据作的范围限定
            //String sql = "delete from yx where age=20";
             String sql = "SELECT id, name, age, sex FROM yx";
             rs = stmt.executeQuery(sql);
        
             //展开结果集数据库
            while(rs.next()){
                // 通过字段检索
                int id = rs.getInt("id");
                String name = rs.getString("name");
                int age = rs.getInt("age");
                String sex = rs.getString("sex");
                // 输出数据
                System.out.print("id: " + id);
                System.out.print(", 姓名: " + name);
                System.out.print(", 年龄: " + age);
                System.out.println(", 性别: " + sex);
            }
            /*
            //count返回影响的行数
            int count = stmt.executeUpdate(sql);
            if(count>0)
            {
                System.out.println("操作成功!");
                System.out.println(count);
            }
            */
        }catch(ClassNotFoundException e) {
            e.printStackTrace();
        }catch(SQLException e){
            e.printStackTrace();
        }catch(Exception e) {
            e.printStackTrace();
        }finally{
            try {
                if(rs!=null)    rs.close();
                if(stmt!=null)    stmt.close();
                if(connection!=null)    connection.close();
        }catch(SQLException e){
            e.printStackTrace();
            }
        }
    }
    public static void main(String[] args)
    {
        update();
    }
}

JDBC API :通过类/接口实现数据库的增删改查
DriverManaget :管理jdbc驱动
Connection: java连接数据库
Statement(PreparedStatement):增删改查
CallableStatement:调用数据库中的存储过程或函数
Result:返回的结果集

jdbc访问数据库的具体步骤
a.导入驱动,加载具体的驱动类( Class.forName("com.mysql.jdbc.Driver");)
b.与数据库建立连接
c.发送sql,执行具体代码(执行增删改)
d.处理结果集(查询)

String sql = "insert into yx(表名) values(3,'ww',20,'M')";//按照建立的表中数据类型添加数据
String sql = "update yx(表名) set name='ls' where age=20";修改表中年龄是20的name是ls
String sql = "delete from yx(表名) where age=20";//删除表中年龄是20的整行数据

posted @ 2021-11-19 15:16  lzzs111  阅读(54)  评论(0)    收藏  举报