java - 如何使用JAVA句柄createStatement INNODB更新sql varchar列

标签 java mysql

我需要使用 JAVA Handle 和 create 语句更新我的列,但根据我的研究,如果我想要更新所有(或大部分)列,我需要使用批处理?

这是我迄今为止编写的代码:

private int deletePlayer(Handle handle, String username, String table) {
    logger.debug("Deleting from table " + table);
    String sqlCommand;

     sqlCommand = String.format("UPDATE %s SET rank = 1 "
            + "SET level = 1 "
            + "SET exp = 0 "
            + "SET prof = '' "
            + "SET guild = '' "
            + "SET varname = '' "
            + "WHERE name = :username", table);

    handle.createStatement(sqlCommand)
            .bind("username", username)
            .execute();        
    return 1;
}

我将其分解并尝试查明问题,发现 MySQL 命令:

sqlCommand = String.format("UPDATE %s SET varname = '' WHERE name = :username", table);

类似的东西不起作用。这很可能是由于字符串/字符连接所致。

另外,我应该使用批处理吗?

堆栈跟踪:[Ljava.lang.StackTraceElement;@15b2043

请,如果您要删除这篇文章,请告诉我原因,我将非常乐意根据您的喜好进行修改或澄清,以便它遵守论坛行为/服务条款/等等.

最佳答案

我认为您错过了用于更新数据库值的关键字集之间的逗号。

sqlCommand = String.format("UPDATE %s SET rank = 1 "
        + "SET level = 1, "
        + "SET exp = 0, "
        + "SET prof = '', "
        + "SET guild = '', "
        + "SET varname = '' "
        + "WHERE name = :username", table);

关于java - 如何使用JAVA句柄createStatement INNODB更新sql varchar列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24985836/

相关文章:

java - 为什么在部署到 tomcat 7 后我的 .war 不启动,但运行嵌入式服务器工作正常?

java - 使用 Java 开发可重用的模板项目

java - 每当我尝试更改 Activity 时,我的应用就会崩溃

php - 我无法更新数据库中的记录

java - 在 @serverEndpoint 类中注入(inject) EJB 会导致 NullPointerException

java - 在 maven 项目中为 j2ee.jar 添加依赖

MySQL 从 JSON 对象数组中选择字段

PHP/Wordpress : Change UTC (? ) 标题中的日期为 "human"日期

php - php中的sql更新查询错误

mysql - SQL整数查询,查找+/- 1以内的整数