Mysql to Sqlite Update SET not working

Hi,

I have been trying to get UPDATE SET working to move data from MYSQL to
SQLite3.

The code is as follows:

#!/usr/bin/env ruby

require ‘dbi’
require ‘rubygems’
require ‘sqlite3’
require ‘mysql’

my1 = Mysql.real_connect(“server”, “username”, “password”, “db”)
my2 = SQLite3::Database.open( ‘myapp/db/development.sqlite3’ )
my2.results_as_hash = true

#stmt = my2.prepare(“insert into usages ( device_id, bytes_sourced )
values( ?, ? )” )

stmt = my2.prepare(“UPDATE usages SET bytes_sourced=‘row[1]’ where
device_id=‘row[0]’”)

result = my1.query(“SELECT device_id, bytes_sourced FROM odma_unit”)

result.each do |row|
stmt.execute(row[0], row[1])

my1.close
end

When I run the code:

print print key + ’ = ’ + value
print “\n”

I get a print out to screen of all the items.
If I run:

stmt = my2.prepare(“insert into usages ( device_id, bytes_sourced )
values( ?, ? )” )

I get entries in the database, obviously if i run it again i get
duplicate entries.

I just want the code to compare the field device_id in the MYSQL to
device_id in the SQLite database and thenif there is one to simply
update the bytes_sourced field. I have tried all sorts of combos for the
stmt and the script runs without errors but does not insert. Its a hash
to database entry and I even had the following code:

result.each do |key, value|
stmt.execute(key, value)

I tihnk I have an error in my result statement.Does anyone have any
advice?

Thanks

Gigg

I tihnk I have an error in my result statement.Does anyone have any
advice?

I’ve heard some people suggest somehow using active record to go between
two db’s. Never done it myself tho.
=r

2009/7/11 Grant G. removed_email[email protected]:

[…]
I have been trying to get UPDATE SET working to move data from MYSQL to
SQLite3.
[…]

Hello,

I would suggest checking the SQLite3 documentation for the ‘INSERT OR
REPLACE …’ syntax, which may be exactly what you need.

cu,
Thomas

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs