JDBC 删除方法似乎在我的 Spring Boot 服务中不起作用[关闭]

Posted

技术标签:

【中文标题】JDBC 删除方法似乎在我的 Spring Boot 服务中不起作用[关闭]【英文标题】:JDBC delete method seems to not be working in my Spring Boot service [closed] 【发布时间】:2021-03-31 19:49:04 【问题描述】:

我正在尝试创建一个简单的 JDBC 方法来从我的数据库中删除,但我不确定我是否以正确的方式进行操作。这是我的一项服务。

方法:

public void deleteLocation(Integer id) 
    String DELETE = "DELETE FROM locale WHERE id=?";
    namedParameterJdbcTemplate.update(DELETE, new BeanPropertySqlParameterSource(id));

【问题讨论】:

【参考方案1】:

我会尝试将您的 update 行更改为 namedParameterJdbcTemplate.update(DELETE, id);.

【讨论】:

我尝试这样做,但最终出现错误 - “无法解析方法 'update(java.lang.String, java.lang.Integer)'” 您能补充更多信息吗?通常编译器会告诉更多关于错误的信息。我认为如果您传递更多信息,那么考虑这个问题会更容易。可能会添加更多代码或错误消息。【参考方案2】:

如果您使用的是 spring-boot。然后你应该使用 spring-data-jpa 来管理你的数据库。 Jdbc 很难做到这一点。

如果您使用 jdbc 删除特定行,请使用准备好的语句。你可以参考这个:

preparedStatement = connection.prepareStatement("DELETE * from table_name WHERE id= ?");
preparedStatement.setInt(1, id);
return !preparedStatement.execute();

【讨论】:

以上是关于JDBC 删除方法似乎在我的 Spring Boot 服务中不起作用[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

JDBC 似乎在我的数字周围加上了单引号

spring @Transactional JDBC 模板 MySQL DB 不回滚

如何在具有 JDBC 安全性的 Spring Boot 中使用 Flyway?

如何为 LDAP 和 JDBC 配置 Spring?

在Spring框架中我们可以用jsp写jdbc吗

无法在 Spring Boot 中使用 JDBC 身份验证创建安全连接