【练习一】
使用PrepareStatement接口,实现数据表的更新操作
【代码】
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
/*
* 使用PrepareStatement接口,实现数据表的更新操作
*/
public class JDBCDemo {
public static void main(String[] args) throws Exception{
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/day07";
String username = "root";
String password = "root";
Connection con = DriverManager.getConnection(url, username, password);
//拼写修改的SQL语句,参数采用?占位
String sql = "UPDATE product SET pname=?,price=? WHERE pid=?";
//调用数据库连接对象con的方法prepareStatement获取SQL语句的预编译对象
PreparedStatement pst = con.prepareStatement(sql);
//调用pst的方法setXXX设置?占位
pst.setObject(1, "旺仔牛奶");
pst.setObject(2, 5);
pst.setObject(3, 10);
//调用pst方法执行SQL语句
pst.executeUpdate();
pst.close();
con.close();
}
}
原表数据
更新后
【练习二】
PrepareStatement接口实现数据表的查询操作
【代码】
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
/*
* PrepareStatement接口实现数据表的查询操作
*/
public class JDBCDemo1 {
public static void main(String[] args) throws Exception{
Class.forName("com.mysql.jdbc.Driver");
String url = "jdbc:mysql://localhost:3306/day07";
String username = "root";
String password = "root";
Connection con = DriverManager.getConnection(url, username, password);
String sql = "SELECT * FROM product";
PreparedStatement pst = con.prepareStatement(sql);
//调用pst对象的方法,执行查询语句,Select
ResultSet rs=pst.executeQuery();
while(rs.next()){
System.out.println(rs.getString("pid")+"\t"+rs.getString("pname")+"\t"+rs.getString("price")+"\t"+rs.getString("cno"));
}
rs.close();
pst.close();
con.close();
}
}
表数据
查询结果