前回UbuntuにMySQLをインストールして、
設定を行ったので今回はRubyからMySQLを操作してみます。
■環境
- Ubuntu 7.04jp
- Ruby 1.8.5
- MySQL 5.0.38
- libmysql-ruby1.8 2.7.1
■準備
・テスト接続用に"test"というデータベースを作っておく
・データベースtestにアクセスできるfooというMySQLのユーザを作っておく
・テーブルusers(id int AUTO_INCREMENT PRIMARY KEY,name varchar(32))を作成しておく
(参考http://d.hatena.ne.jp/h13i32maru/20070624/p1)
■Ruby2MySQL
#!/usr/bin/ruby
#mysqlモジュールをロード
require "mysql"
#MySQLに接続
db = Mysql.new("localhost","foo","foo_password","test")
#クエリ発行
db.query("insert users set name='alice'")
result = db.query("select * from users")
#selectの結果
result.each do |x|
puts x[0] + x[1]
end
#結果のメモリ開放
result.free
#データベースから切断
db.close
selectの結果の扱いかたには3種類あります。
#配列として扱う result.each do |x| puts x[0] + x[1] end #ハッシュとして扱う result.each_hash do |x| puts x["id"] + x["name"] end #配列を多重代入して扱う result.each do |id,name| puts id + name end
(好みは配列を多重代入して扱うかな)
基本的にはこれだけ知ってればいいはず。
次はRubyでCGIの作り方&セッションの扱いかたを勉強せねば。
それをクリアーしたら簡単なWebアプリケーションなら作れるはず。
ではでは。