Spring JdbcTemplate删除语法

Spring JdbcTemplate删除语法,spring,spring-jdbc,Spring,Spring Jdbc,有人能指出我下面的SpringJDBC模板代码中的错误吗 单击“删除”时,记录不会被删除,并且不会显示任何错误 public void delete(String id) { logger.debug("Deleting existing person"); // Prepare our SQL statement using Unnamed Parameters style String query = "delete from pers

有人能指出我下面的SpringJDBC模板代码中的错误吗

单击“删除”时,记录不会被删除,并且不会显示任何错误

public void delete(String id) {
    logger.debug("Deleting existing person");

    // Prepare our SQL statement using Unnamed Parameters style
    String query = "delete from person where id = ?";

    // Assign values to parameters
    Object[] person = new Object[] {id};

    // Delete
    jdbcTemplate.update(query, person);
}

这里有一个例子。注意:

整数id

@覆盖
公共字符串deleteXXById(字符串id){
String sql=“从id=:id的地点删除?”;
Map paramMap=新的HashMap();
paramMap.put(“id”,id);
Object[]args=新对象[]{id};
int update=jdbcTemplate.update(sql,paramMap);
字符串updatecount=“失败”;
如果(更新==0){
updatecount=“失败”;
}否则{
updatecount=“成功”;
}
返回updatecount;
}

您是否提交交易?我不明白您的意思。如果可能,请给我举个例子。上述代码正确吗?是的,您的代码看起来正确。可能的情况是:没有id为“id”的人/您连接到了错误的数据库/您在一个单元测试框架上运行此操作,该框架在完成时回滚事务可能是您缺少架构名称。例如:从schemaName.tableName中删除,其中id=?
public boolean delete(Integer id){
    String sql = "DELETE FROM organization WHERE id = ?";
    Object[] args = new Object[] {id};

    return jdbcTemplate.update(sql, args) == 1;
}
@Override
    public String deleteXXById(String id) {
        String sql = "DELETE FROM VENUE WHERE id =:id?";
        Map<String, Object> paramMap = new HashMap<String, Object>();
        paramMap.put("id", id);

        Object[] args = new Object[] {id};
        int update = jdbcTemplate.update(sql, paramMap);
        String updatecount = "Failed";
        if (update == 0) {
            updatecount = "Failed";
        } else {
            updatecount = "SUCCESS";
        }
         return updatecount;
    }