如何从grails调用数据库函数?
比如CONVERT(decimal, timestamp)
不使用像这样的groovy SQL:
def sql = new Sql(dataSource)
我想避免任何SQL语句,并充分利用grails magic。
答案 0 :(得分:3)
我的理解是grails没有对数据库函数的本机支持。您将需要编写SQL。 Gorm是Hibernate的抽象,你可能想参考:
答案 1 :(得分:0)
在您的域类中,首先您必须 -
导入 groovy.sql.Sql
然后你可以创建Sql实例并调用如下函数-
def date = "'21-Feb-19 14:10:10.123000'"
def timestamp_format = "'DD-Mon-RR HH24:MI:SS.FF'"
String query = 'select to_timestamp('+date+','+timestamp_format+') from dual'
def sql = Sql.newInstance('url', 'username', 'password', 'driverClassName')
def result= sql.rows(query);
def rows = result.collect{it.values()}
println rows