我在Java中有一个函数,用于更新mysql数据库中表的描述字段和标题字段,如下所示:
public void updateDescription( String desc, String title, int urlid ) throws SQLException, IOException {
String cutDesc = desc.substring(0, 99);
Statement stat = connection.createStatement();
String query = "UPDATE urls SET description = '"+cutDesc+"', title = '"+title+"' WHERE urlid =" + urlid;
stat.executeUpdate( query );
stat.close();
}
使用以下方法调用此函数时:
updateDescription(desc, title, urlID);
表中没有任何内容。没有错误,它似乎忽略了它。有什么想法吗?
由于
答案 0 :(得分:1)
你说没有任何东西放在桌子上。
但是UPDATE
没有把东西放到表中 - 它只修改已经存在的行。您需要使用INSERT
代替UPDATE
。
答案 1 :(得分:0)
connection.commit();
或
connection.setAutoCommit(true);
应该有帮助。
答案 2 :(得分:0)
public void updateDescription( String desc, String title, int urlid ) throws SQLException, IOException {
String cutDesc = desc.substring(0, 99);
Statement stat = connection.createStatement();
String query = "UPDATE urls SET description = '"+cutDesc+"', title = '"+title+"' WHERE urlid ='" + urlid+"'";
stat.executeUpdate( query );
stat.close();
}
尝试上面的代码,因为您已经声明urlid在数据库中是VARCHAR