为什么Mysql字段不会更新? - Java

时间:2014-04-10 11:12:12

标签: java mysql

我正在尝试用Java编写一个函数来更新Mysql表的描述和标题字段但是当我传递int变量' urlid'什么也没有添加。如果我将urlid变量(在查询的最后)更改为另一个int变量(例如int i = 2),那么它可以正常工作。什么是这个urlid让事情出错?

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();
    }

2 个答案:

答案 0 :(得分:0)

我猜你错过了报价,

"UPDATE urls SET description = '"+cutDesc+"', title = '"+title+"' WHERE urlid ='"+ urlid+"'";

希望这有帮助!!

注意:使用预准备语句来避免sql注入。 see here

答案 1 :(得分:0)

我猜你最后可以试试WHERE urlid ='"+ urlid+"'";

供您参考http://dev.mysql.com/doc/refman/5.7/en/type-conversion.html