【问题标题】:Placeholders in SQL [duplicate]SQL中的占位符[重复]
【发布时间】:2013-11-27 12:10:02
【问题描述】:

我准备了一个 sql 脚本,它将一些测试数据插入数据库,以便您可以针对它运行单元测试并有一些单元测试期望,例如会有一些带有一些值的属性,并且可以通过检查该数据来检查查询的有效性

我需要知道的是 java 数据访问层如何让您在语句中使用参数,是否允许使用命名参数(这是 sql server 标准)还是使用“?”占位符?

所以,例如你想执行以下查询

select * from items where ID = @ID

其中@ID是一个参数,你可以在执行查询之前传递给sql命令。

我确信在 java 中有一些东西,但取决于数据提供者,它允许您使用命名参数或只是“?”占位符,所以 sql 应该看起来像

select .. from .. where ID = ?

【问题讨论】:

    标签: java sql jdbc data-access-layer


    【解决方案1】:

    普通的 JDBC 预处理语句不提供此功能。

    您可以使用 Spring 中的 NamedParameterJdbcTemplate 或查看以下链接以获取 NamedPreparedStatement 的示例实现

    http://www.javaworld.com/javaworld/jw-04-2007/jw-04-jdbc.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-23
      • 2016-08-20
      • 1970-01-01
      • 2019-01-17
      • 2013-07-10
      相关资源
      最近更新 更多