首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >插入mysql条目(如果不存在),如果不存在则更新

问插入mysql条目(如果不存在),如果不存在则更新
EN

Stack Overflow用户
提问于 2013-11-30 16:31:20
回答 1查看 442关注 0票数 0

我想插入一个条目,如果它不存在,否则更新条目,我不能使用ON重复键更新,我被语法搞混了。所以我试着做这样的事:

代码语言:javascript
复制
    final String QUERY = "REPLACE INTO skills SET VALUES (" + insert(player) + ") WHERE playername = '" + player.getUsername() + "'";
    statement.execute(QUERY);

    statement.close();
    connection.close();
}

private static String insert(Player player) {
    String stringToReturn = "'" + player.getUsername() + "',";
    for (int index = 0; index < 25; index++) {
        stringToReturn += player.getSkills().getLevels()[index] + "," + ((int) player.getSkills().getXp()[index]) + ",";
    }
    stringToReturn = stringToReturn.substring(0, stringToReturn.length() - 1);
    return stringToReturn;
}

但这是不正确的语法,所以我想知道我如何能做到这一点?

玩家名是主键

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-11-30 16:39:39

对于重复的键更新工作,我认为正确的语法是:

代码语言:javascript
复制
"INSERT INTO skills (playerName, otherColumn) 
    VALUES ('" + player.getUsername() + "', '" + insert(player) +"')
 ON DUPLICATE KEY UPDATE otherColumn = VALUES(otherColumn)";
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20302669

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档