如何使用DBI连接在Ruby中运行PL / SQL语句

时间:2012-01-16 18:15:51

标签: ruby oracle plsql dbi

我想运行一个简单的PL / SQL来测试是否可以打印标准输出。

PL / SQL块应输出:“总数为:157”

我运行以下Ruby脚本,但它没有打印任何内容。请你指教。

require 'dbi'

dbh = DBI.connect('DBI:ODBC:hr','hr','hr')
dbh.do("BEGIN DBMS_OUTPUT.ENABLE; END;")
db_read_str = <<-EOS
declare
  c number;
begin
  select count(*) into c
  from exo_user where sys_logon like 'uk%';
  DBMS_OUTPUT.PUT_LINE('The total number is: ' || c);
end;
EOS

rs = dbh.prepare(db_read_str)
rs.execute
dbh.select_all(db_read_str) do |row|
  p row
end

rs.finish

看起来这条路线很难。让我解释一下我需要什么,请告诉我该怎么做。我需要操纵一些数据来生成报告。我得到的数据可以调用CpuReporting.getgridusage(300)函数。该程序需要用Ruby编写。 另见:Get all records from a Ref Cursor in a Package

0 个答案:

没有答案