我正在尝试执行以下方法
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)
当我到达最后一行时,它会给我一个false,并且不执行查询。请帮助
我对Oracle不太熟悉,但您确定JNDI连接连接到与SQL控制台相同的表空间/数据库/架构吗?这个答案让我觉得,也许你在某种程度上与你认为的自己没有联系。
尝试在update
之后追加table
如update table ACCOUNTS
来自文档:
返回值:(1)SQL数据操作语言(DML)语句的行数,或(2)不返回任何值的SQL语句为0。
update语句不返回任何内容,因此executeUpdate将返回0。