3

如何从 grails 调用数据库函数?比如像这样CONVERT(decimal, timestamp) 不使用groovy SQL:

def sql = new Sql(dataSource)

我想避免任何 SQL 语句并充分利用 grails 的魔力。

4

2 回答 2

5

我的理解是 grails 没有对数据库功能的原生支持。您将需要编写 SQL。Gorm 是 Hibernate 的一个抽象,你可能要参考:

如何使用 Hibernate 调用自定义数据库函数?

于 2012-08-02T18:43:30.460 回答
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 
于 2021-02-19T16:22:56.677 回答