From: Greg Halsey Date: 2007-10-13T00:04:13+09:00 Subject: Re: SQLite3::SQLException: no such function: get_zy_string #sql statements need to terminate with a ; require 'rubygems' require 'sqlite3' db = SQLite3::Database.new('backpb.s3db') db.execute("SELECT UID, lastName, firstName, fullLastName FROM devicephonebook;") do |row| p row #executing an an update doesn't work in the block. seems to mess up the result #set with the new execute command??? end workaround=db.execute("SELECT UID, lastName, firstName, fullLastName FROM devicephonebook;") workaround.each do |row| db.execute("UPDATE devicephonebook SET lastName ='#{row[1].capitalize}', firstName = '#{row[2].capitalize}', fullLastName= '#{row[1].capitalize}#{row[2].capitalize}' WHERE UID = '#{row[0]}';") end p '--records-after-update--' p db.execute("SELECT UID, lastName, firstName, fullLastName FROM devicephonebook;") Here is the output: >ruby sqlite3_replace.rb ["1", "ronald", "mcdonnald", "ronaldmcdonnald"] ["2", "Andy", "Mcdonnald", "andymcdonnald"] "--update-records--" "--records-after-update--" [["1", "Ronald", "Mcdonnald", "RonaldMcdonnald"], ["2", "Andy", "Mcdonnald", "AndyMcdonnald"]] >Exit code: 0 -- Posted via http://www.ruby-forum.com/.