Ruby素人がDBアクセスに挑戦。
require 'dbi'
ってやってみると早速エラー。
LoadError: no such file to load -- dbi
dbiパッケージ(?)のインストールが必要みたい。
でdbiをインストールしてみる。
RubyGemsでインストールできるのかなー、とググっても無理みたい。
手動でダウンロードするみたい。
#RubyForgeにはdbi.gemみたいなのがないから無理なのかな。。
そもそもRubyGems自体よくわかってない。
とりあえずいろんなサイトを参考にdbiダウンロード
インストール時にsqlite絡みのエラーが出るので、
ruby setup.rb config --with=dbi,dbd_mysql ruby setup.rb setup ruby setup.rb install
Mysqlだけでいいよってかんじで。
いよいよプログラム実行。
require 'dbi' def with_db DBI.connect('dbi:mysql:testdb:localhost',"user", "pass") do |c| row = c.select_one("SELECT VERSION() ") puts "Server version: " + row[0] end end with_db
お?
/usr/local/lib/ruby/site_ruby/1.8/dbi.rb:344:in `load_driver': Could not load driver (no such file to load -- mysql) (DBI::InterfaceError) from /usr/local/lib/ruby/site_ruby/1.8/dbi.rb:227:in `_get_full_driver' from /usr/local/lib/ruby/site_ruby/1.8/dbi.rb:213:in `connect'
MySQLのドライバーが見つからないってな。
地味にここで30分はまる。。
結局、RubyForge見て、
MySQLドライバーは別途用意しないとだめみたい。
あとはこのへんを参考に。。
当たり前っちゃー当たり前な話ですが、
慣れない環境だと手こずりました。
ちょっとずつがんばろ。