Groovy Sql для выполнения операторов в пакете - PullRequest
0 голосов
/ 17 января 2012

Я использую Groovy Sql для получения результатов.Это вывод из моей коробки Linux.На самом деле задействованы 2 оператора sp_configure 'number of open partitions' и go, см. Ниже

%isql -U abc -P abc -S support
1> sp_configure 'number of open partitions'
2> go
Parameter Name                 Default     Memory Used Config Value
     Run Value    Unit                 Type
------------------------------ ----------- ----------- ------------
     ------------ -------------------- ----------
number of open partitions              500        5201         5000
             5000 number               dynamic

(1 row affected)
(return status = 0)
1>

Я использую код groovy

def sql = Sql.newInstance("jdbc:abc:sybase://harley:6011;DatabaseName=support;",dbuname,dbpassword,Driver)
sql.eachRow("sp_configure 'number of open partitions'"){ row ->
        /*println row.run_value*/
    }

Есть ли способ выполнить операторы в пакетном режиме?

Я использую Sybase

Ответы [ 3 ]

0 голосов
/ 18 января 2012

На самом деле еще не пробовал [пока], но:

sql.call("sp_configure 'number of open partitions'")
int[] updateCounts = sql.withBatch({
   sql.eachRow("go"){ row ->
     ...
   }
})

// check your updateCounts here for errors
0 голосов
/ 23 января 2012

Просто попробуйте это

sql.eachRow("sp_configure 'number of open partitions'"){ row ->
        println row.'Parameter Name'.trim    }
0 голосов
/ 17 января 2012

Не уверен, что это будет работать, но вы можете сделать:

sql.call("sp_configure 'number of open partitions'")
sql.eachRow("go"){ row ->
  ...
}
...