gpt4 book ai didi

hibernate - 在grails标准中转义下划线

转载 作者:行者123 更新时间:2023-12-02 14:35:42 25 4
gpt4 key购买 nike

我们有一些像声明一样在做的简单域对象。表中的数据通常带有下划线。问题是,在like语句中使用下划线时,下划线是oracle中的通配符。到目前为止,这是我发现的结束语,但似乎不太正确。

MyDomain{
def columnOne
def columnTwo
}

def results = myDomain.createCriteria().list(max:10, offset:10){
ilike("columnTwo","%BOB\_%")
sqlRestriction("ESCAPE \\")
}

正在执行的SQL是
select count(*) as y0_ from MY_SCHEMA.MY_DOMAIN this_ where
lower(this_.COLUMN_TWO) like ?
and ESCAPE '\'

看来sqlRestriction子句在查询中被标记为AND。有没有办法避免这种情况,还是有更好的方式格式化标准?

最佳答案

一种方法是使用像sqlRestriction这样的方法,并在字符串中添加转义符,如您所见here

def results = myDomain.createCriteria().list(max:10, offset:10){
sqlRestriction("lower(column_two) like '%bob\_%' ESCAPE '\\' ")
}

关于hibernate - 在grails标准中转义下划线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12496737/

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