DBI, and SQLite Problems


#1

Uhoh!
I need to work with MySQL databases, and my job is to enter in maybe
7000 entries into various tables. Since I’m getting paid by the hour,
entering the data in by hand would be a great way to save for college

  • but I don’t want to do that. I am looking to enter in the data via
    RUBY!!!

After doing some research for a nice MySQL module in ruby, I came
across a very nice one (http://www.troubleshooters.com/codecorn/ruby/
database/index.htm). But to use it, I need DBI to be installed first.
However, whenever I type:
ruby setup.rb setup
I get an error:
checking for sqlite_open() in -lsqlite… no
*** extconf.rb failed ***
This, as you can see, cause me to fail at making the makefile.

What should I do to fix this? I am running Mac OS X and have MySQL
installed (although would really rather otherwise).

Help!
-------------------------------------------------------|
~ Ari
crap my sig won’t fit


#2

On Jun 28, 2007, at 19:47 , Ari B. wrote:

What should I do to fix this? I am running Mac OS X and have MySQL
installed (although would really rather otherwise).

How do you have Ruby installed? If you installed Ruby yourself, you
might already have dbi as part of the installation. (That appears to
be the case on my machine.) Also, you might consider installing
sqlite via Macports, which might provide you with the necessary library.

Michael G.
grzm seespotcode net


#3

On Jun 28, 2007, at 20:18 , Michael G. wrote:

On Jun 28, 2007, at 19:47 , Ari B. wrote:

What should I do to fix this? I am running Mac OS X and have MySQL
installed (although would really rather otherwise).

How do you have Ruby installed? If you installed Ruby yourself, you
might already have dbi as part of the installation. (That appears
to be the case on my machine.)

Correction: I misread my installation.

From the README in ruby-dbi:

To install dbi and some DBDs:

ruby setup.rb config --with=dbi,dbd_pg, …
ruby setup.rb setup
ruby setup.rb install

So, I think you’d want something along the lines of

ruby setup.rb config --with=dib, dbd_mysql or somesuch.

Reading README’s and Google is definitely your friend–second link
after googling “ruby-dbi mysql install”:

http://www.kitebird.com/articles/ruby-dbi.html

Michael G.
grzm seespotcode net


#4

On Jun 28, 2007, at 9:26 PM, Michael G. wrote:

So, I think you’d want something along the lines of

ruby setup.rb config --with=dib, dbd_mysql or somesuch.

I did ruby setup.rb config --with=dbd_mysql, as well as with
dbd_sqlite. mysql worked perfectly, and sqlite did not. I assume this
is because I do not have the sqlite software installed, as I do with
mysql?

Reading README’s and Google is definitely your friend–second link
after googling “ruby-dbi mysql install”:

I read the README and searched on Google, but it seems that all this
time I was searching for the wrong stuff!

while true
puts ‘Thank You!’
end
---------------------------------------------------------------|
~Ari
“I don’t suffer from insanity. I enjoy every minute of it” --1337est
man alive


#5

On 6/28/07, Ari B. removed_email_address@domain.invalid wrote:

On Jun 28, 2007, at 9:26 PM, Michael G. wrote:

So, I think you’d want something along the lines of

ruby setup.rb config --with=dib, dbd_mysql or somesuch.

I did ruby setup.rb config --with=dbd_mysql, as well as with
dbd_sqlite. mysql worked perfectly, and sqlite did not. I assume this
is because I do not have the sqlite software installed, as I do with
mysql?

You need sqlite as well as the sqlite3-ruby gem

This howto is for camping, but should do the trick:
http://code.whytheluckystiff.net/camping/wiki/BeAlertWhenOnSqlite3

Also, you might consider using ActiveRecord standalone instead of DBI.
Or possibly Sequel, or something else that isn’t painful like DBI is.
:wink:

If you wanted to use AR outside of Rails, I wrote an article that
might be helpful.
http://www.oreillynet.com/pub/a/ruby/2007/06/21/how-to-build-simple-console-apps-with-ruby-and-activerecord.html

Good luck,
-greg


#6

On Jun 28, 2007, at 21:19 , Ari B. wrote:

I assume this is because I do not have the sqlite software
installed, as I do with mysql?

That appears to be the case. The DBD modules often need to link to
libraries for their corresponding server. IIRC, the Perl Sqlite CPAN
module even installs Sqlite as part of its installation. It’s quite
small.

Michael G.
grzm seespotcode net