gpt4 book ai didi

java - 为什么 SQLQuery setParameter 不能使用 LIKE?

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:59:15 24 4
gpt4 key购买 nike

我这里有:

Session session = getSession();
SQLQuery query = session.createSQLQuery("SELECT * FROM PERSON WHERE NAME LIKE '%?%'");
query.setParameter(0, personName);

我收到以下错误:

java.lang.IndexOutOfBoundsException: Remember that ordinal parameters are 1-based!

但是当我尝试时:

Session session = getSession();
SQLQuery query = session.createSQLQuery("SELECT * FROM PERSON WHERE NAME = ?");
query.setParameter(0, personName);

它的工作。

我需要使用 LIKE。

最佳答案

你可以这样做:

Session session = getSession();
SQLQuery query = session.createSQLQuery("SELECT * FROM PERSON WHERE NAME LIKE ?");
query.setParameter(0, "%" + personName + "%");

关于java - 为什么 SQLQuery setParameter 不能使用 LIKE?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11517227/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com