题目2:编写一个应用程序,在主类Test_4类中,通过JDBC访问stu数据库,显示t_student表中的内容(表结构见表1),显示效果自己设计。
之后,可根据显示的内容进行某条记录的删除(以id为条件)和修改(以id为条件,修改name字段值)。程序运行结果如下
此为修改
连接mysql数据库,完成
import java.sql.*; import java.util.Scanner; public class Test_4 { public static void main(String[] args) { // 1.加载JDBC驱动程序 try { Class.forName("com.mysql.jdbc.Driver"); } catch (ClassNotFoundException e) { e.printStackTrace(); } // 2.创建数据库的链接 try { System.out.println("连接数据库..."); Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/stu", "root", "dai324542"); // 3.执行SQL语句 Statement sql = con.createStatement();// Statement接口 ResultSet re = sql.executeQuery("select * from t_student");// executeQuery查询----ResultSet结果集 // 4.接收并处理结果集 System.out.println(" 查询中....."); while (re.next()) { int id = re.getInt("id"); String name = re.getString("name"); String classes = re.getString("classes"); // 输出数据 System.out.println("学号: " + id); System.out.println("姓名: " + name); System.out.println("班级: " + classes); System.out.print("\n"); } Scanner reader = new Scanner(System.in); System.out.println("please input id: "); int Id = reader.nextInt(); ResultSet rs = sql.executeQuery("select * from t_student where id='" + Id + "'"); if (rs.next()) { System.out.println("please input new name: "); String newname = reader.next(); int n = sql.executeUpdate("update t_student set name='" + newname + "'where id='" + Id + "'"); if (n > 0) { System.out.println("success!"); } else { System.out.println("修改失败!"); } } else { System.out.println("未查询到此id!"); } // 5.断开连接,关闭数据库 re.close(); con.close(); } catch ( SQLException e) { e.printStackTrace(); } } }