Java SQL Update语句

时间:2013-11-26 11:16:14

标签: java sql jdbc

我正在尝试执行以下方法

String sqlQuery = "UPDATE ACCOUNTS"
                    + " SET LAST_LOGIN_DATE=LOGIN_DATE,"
                    + " LOGIN_DATE=SYSTIMESTAMP" 
                    + " WHERE CUSTOMER_ID=? AND USER_ID=?";

        logger.debug("[{}] sqlQuery={}", methodName, sqlQuery);

        String connectionName = properties.getProperty(JNDI_NAME);
        Connection connection = null;
        PreparedStatement pstmt = null;

            connection = getJNDIConnection(connectionName);
            pstmt = connection.prepareStatement(sqlQuery);
             // set the input parameters
            pstmt.setString(1, customerId);
            pstmt.setString(2, userId);

                        if (pstmt.executeUpdate() > 0)

当我到达最后一行时,它给我假,并且不执行查询。 请帮忙

3 个答案:

答案 0 :(得分:0)

我不熟悉Oracle,但您确定JNDI连接是否连接到与SQL控制台相同的表空间/数据库/模式? This answer让我觉得你可能不知道你是不是想象自己。

答案 1 :(得分:-1)

尝试在table之后添加update 比如update table ACCOUNTS

答案 2 :(得分:-1)

来自documentation

返回:(1)SQL数据操作语言(DML)语句的行数或(2)0表示不返回任何内容的SQL语句。

update语句不返回任何内容,因此executeUpdate将返回0。