我在更新database.It时遇到问题,没有更新任何字段I edit.Please help我有如下代码
package model;
import java.sql.*;
public class Datahandler {
public ResultSet databaseResult(Connection c,String query) throws SQLException{
Statement stmt=c.createStatement();
ResultSet rs=stmt.executeQuery(query);
return rs;
}
public void databaseDelete(Connection c,String query) throws SQLException{
Statement stmt=c.createStatement();
stmt.executeUpdate(query);
}
public int databaseInsert(Connection c,Contactdb pb) throws SQLException{
int rowsaffected=0;
try{
String query="INSERT INTO contactDb (first_name,last_name,phone_number,company_name,state,city,street,building_no) VALUES (?,?,?,?,?,?,?,?)";
PreparedStatement statement = c.prepareStatement(query);
statement.setString(1, pb.get_firstname());
statement.setString(2,pb.get_lastname());
statement.setString(3, pb.get_phonenumber());
statement.setString(4, pb.get_companyname());
statement.setString(5, pb.get_state());
statement.setString(6, pb.get_city());
statement.setString(7, pb.get_street());
statement.setInt(8,pb.get_buildingno());
statement.execute();
} catch(SQLException e){
e.printStackTrace();
} finally {
c.close();
}
return rowsaffected;
}
public int databaseUpdate(Connection c,Contactdb pb) throws SQLException{
int a=0;
try{
String query="UPDATE contactDb SET first_name=?,last_name=?,phone_number=?,company_name=?,state=?,city=?,street=?,building_no=? WHERE sn=?";
a=69;
PreparedStatement statement = c.prepareStatement(query);
statement.setString(1, pb.get_firstname());
statement.setString(2,pb.get_lastname());
statement.setString(3, pb.get_phonenumber());
statement.setString(4, pb.get_companyname());
statement.setString(5, pb.get_state());
statement.setString(6, pb.get_city());
statement.setString(7, pb.get_street());
statement.setInt(8,pb.get_buildingno());
statement.setInt(9,pb.get_sn());
} catch(SQLException e){
e.printStackTrace();
} finally{
c.close();
}
return a;
}
}我在更新database.It时遇到问题,没有更新edit.Please帮助中的任何字段
发布于 2013-06-28 10:31:24
方法databaseUpdate()似乎缺少执行update语句的statement.executeUpdate()。
发布于 2013-06-28 10:34:39
在设置表的所有字段后,您忘记了执行数据库更新语句。
public int databaseUpdate(Connection c,Contactdb pb) throws SQLException{
int a=0;
try{
String query="UPDATE contactDb SET first_name=?,last_name=?,phone_number=?,company_name=?,state=?,city=?,street=?,building_no=? WHERE sn=?";
a=69;
PreparedStatement statement = c.prepareStatement(query);
statement.setString(1, pb.get_firstname());
statement.setString(2,pb.get_lastname());
statement.setString(3, pb.get_phonenumber());
statement.setString(4, pb.get_companyname());
statement.setString(5, pb.get_state());
statement.setString(6, pb.get_city());
statement.setString(7, pb.get_street());
statement.setInt(8,pb.get_buildingno());
statement.setInt(9,pb.get_sn());
*statement.executeUpdate();*
}
catch(SQLException e){
e.printStackTrace();
}
finally{
c.close();
}
return a;
}
}https://stackoverflow.com/questions/17356287
复制相似问题