| 著作一覧 |
require 'ruby-oci8'
c = OCI8.new("scott", "tiger", "//server/dbname") # portは1521ならOKだったが指定したらORA例外となった
c.exec('select id, blob from table for update order by id') do |id, blob|
b = blob.read
b.gsub('a', 'b')
blob.rewind # これは重要っぽい
blob.write(b)
blob.size = b.size # これも重要っぽい
end
c.commit
c.logoff
以上で、table内のblobカラムの'a'は'b'に変わる。
とBlobの扱いで時間を取られたが、やはり圧倒的に楽。
ジェズイットを見習え |