第1关:JDBC更新员工密码
任务描述
本关任务:借助JDBC在库名tsgc中完成对数据表employee中性别为“女”的员工密码修改为“hello”;
表结构如图:
相关知识
(略)
编程要求
根据提示,在右侧编辑器编写代码,在updateDB方法中完成"性别女"的员工密码修改
测试说明
平台会对你的代码进行运行测试,如果实际输出结果与预期结果相同,则通关;反之,则 GameOver。
代码实现
package step1;
import java.sql.*;
public class UpdatePass {
// 修改数据
public static void updateDB() {
/********* Begin *********/
// 第一步:加载驱动
try {
Class.forName("com.mysql.jdbc.Driver");
} catch (ClassNotFoundException e1) {
// TODO 自动生成的 catch 块
e1.printStackTrace();
}
// 第二步:建立连接, "root"和"123123"是针对MySQL设置了用户名(root)和密码(123123)的情况
// 127.0.0.1:3306是mysql服务器地址及端口 数据库编码格式设置为utf-8
Connection conn = null;
PreparedStatement ps = null;
try {
String url = "jdbc:mysql://127.0.0.1:3306/tsgc?useUnicode=true&characterEncoding=utf8";
String user = "root";
String password = "123123";
conn = DriverManager.getConnection(url, user, password);
// 第三步:建立statement对象
String sql = "update employee set password='hello' where sex='女'";
ps = conn.prepareStatement(sql);
// 第四步:修改数据
ps.execute();
// 第五步:关闭statement对象和连接对象
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
} finally {
try {
ps.close();
conn.close();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
/********* End *********/
}
}
第2关:JDBC查询员工信息
任务描述
本关任务:借助JDBC在库名tsgc中完成对数据表employee数据的查询,并将查询结果在控制台打印输出;
表结构如图:
相关知识
(略)
编程要求
根据提示,在右侧编辑器编写代码,在queryDB方法中完成表employee数据的查询,并按照输出格式进行输出(冒号为英文格式,每部分之间的分隔符是“/t”)。
测试说明
测试输入:无;
预期输出:
no:1001 name:张三 password:111 sex:男 salary:3500.0
no:1002 name:李四 password:222 sex:男 salary:8500.0
no:2001 name:王五 password:333 sex:女 salary:4500.0
代码实现
package step1;
import java.sql.*;
public class QueryPass {
// 查询数据代码不用上实验报告
public static void queryDB() {
/********* Begin *********/
Connection conn = null;
PreparedStatement ps = null;
try {
// 第一步:加载驱动
Class.forName("com.mysql.jdbc.Driver");
// 第二步:建立连接, "root"和"123123"是针对MySQL设置了用户名(root)和密码(123123)的情况
// 127.0.0.1:3306是mysql服务器地址及端口 数据库编码格式设置为utf-8
String url = "jdbc:mysql://127.0.0.1:3306/tsgc?useUnicode=true&characterEncoding=utf8";
String user = "root";
String password = "123123";
conn = DriverManager.getConnection(url, user, password);
// 第三步:建立statement对象
String sql = "select * from employee";
ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
// 第四步:查询数据
while (rs.next()) {
String no = rs.getString(1);
String name = rs.getString(2);
Object password1 = rs.getString(3);
Object sex = rs.getString(4);
double salary = rs.getDouble(5);
System.out.println("no:" + no + "\tname:" + name + "\tpassword:" + password1 + "\tsex:" + sex
+ "\tsalary:" + salary);
}
} catch (Exception e) {
e.printStackTrace();
} finally {
// 第五步:关闭statement对象和连接对象
try {
ps.close();
conn.close();
} catch (SQLException e) {
// TODO 自动生成的 catch 块
e.printStackTrace();
}
}
/********* End *********/
}
}