From: KUBO Takehiro Date: 2008-04-27T22:58:19+09:00 Subject: [ANN] ruby-oci8 1.0.1 ruby-oci8 1.0.1 is released. This is a Oracle module using OCI8 API. http://rubyforge.org/projects/ruby-oci8/ ruby-oci8-unstalbe 2.0-svn-262 is also released. This will be ruby-oci8 2.0 in future. Many features are added. Some of them are contributed by Oracle Corporation. Excuse me for not writing changes between 1.0 and 2.0. What's new in ruby-oci8 1.0.1. 1. [SPEC CHANGE] OCI8#exec and OCI8::Cursor#exec's return value is changed for statement except select, insert, update and delete statement. It had been true. But now it is the number of rows processed for all non-select statements. For example: # 1.0.0 or before conn = OCI8.new('user/pass') conn.exec('rename FOO_TABLE to BAR_TABLE') # => true # 1.0.1 conn = OCI8.new('user/pass') conn.exec('rename FOO_TABLE to BAR_TABLE') # => 0 2. fix a bug that OraDate.new made a core dump on x86_64 linux. (reported by Alun Eyre) 3. fix OCI8#non_blocking = false problem. Once the connection became non-bocking mode, it could not be reset to blocking mode. Now it can be reset. (reported by Cagdas Gerede) 4. support cursors in a result set. (contributed by Randy Gordon) For example: conn = OCI8.new('ruby/oci8') sql = 'SELECT CURSOR(SELECT * FROM foo where foo.c1 = bar.c1 ) FROM bar' conn.exec(sql) do |row| cursor_in_result_set = row[0] cursor_in_result_set.fetch do |row| puts row.join(',') end end 5. fix oraconf.rb for official x86_64 linux rpms. (contributed by Pat)