首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

兑现数据的批量修改

2012-08-30 
实现数据的批量修改import java.sql.Connectionimport java.sql.DriverManagerimport java.sql.Prepared

实现数据的批量修改

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

/**
?* @author zcq 使用预编译statement对象 PreparedStatement
?*/
public class JdbcPrepared {

?public static boolean testJdbcdemoPrepare() {
??String diverName = "com.mysql.jdbc.Driver";
??String url = "jdbc:mysql://localhost:3306/netshop?"
????+ "useUnicode=true&characterEncodering=utf-8";
??String username = "root";
??String password = "123";

??Connection conn = null;
??PreparedStatement ptmt = null;
??String sql_update = "UPDATE Students set stud_name=? WHERE stud_id=?";
??String sql_select = "SELECT stud_id, stud_name FROM Students";

??ResultSet rs = null;
??try {
???// 第1步:加载驱动
???Class.forName(diverName);
???// 第2步: 创建连接
???conn = DriverManager.getConnection(url, username, password);
???// 第3步: 创建PreparedStatement对象
???ptmt = conn.prepareStatement(sql_update)
???// 设定事务不默认提交
???conn.setAutoCommit(false);
???String[] names = new String[] { "张曼玉", "贝克汉姆" };
???for (int i = 0; i < names.length; i++) {
????ptmt.setString(1, names[i]);
????ptmt.setInt(2, 10001 + i);
????ptmt.executeUpdate();
???}
???conn.commit();
???// 第4步: 执行SQL语句,并获得结果集
???rs = ptmt.executeQuery(sql_select);
???// 第5步: 处理结果集
???while (rs.next()) {
????System.out.println(rs.getString("stud_id")
?????????+ ": "
?????????+ rs.getString ("stud_name"));
???}
???return true;

??} catch (Exception e) {
???try {
????// 回滚事务
????conn.rollback();
???} catch (SQLException e1) {
????// TODO Auto-generated catch block
????e1.printStackTrace();
???}
???return false;
??} finally {
???try {
????// 第6步: 关闭连接
????ptmt.close();
????conn.close();
???} catch (SQLException e) {
????e.printStackTrace();
???}
??}
?}

}

热点排行