1

这是使用 Ruby 从 Oracle 获取结果的最简洁方式吗?

require 'oci8'
results_array = Array.new
oci.exec('select column_a from table_a') do |row|
  results_array.push(row)
end
results_array.each do |result|
  puts result
end

我希望看到更简洁的内容,例如:

require 'oci8'
results_array = oci.exec('select column_a from table_a')
puts results_array

但是当我尝试这个时,我得到一个 Oracle Cursor 错误。

4

1 回答 1

2

如果您只想puts行:

oci.exec('select column_a from table_a') { |row| puts row}

如果您想构建一个数组以供以后使用:

results_array = []
oci.exec('select column_a from table_a') { |row| results_array << row }
puts results_array.join("\n")

希望这可以帮助 :)

于 2013-03-22T23:28:37.677 回答