require 'rubygems'

SQLiteを使ってみようとしていきなりひっかかった。rubyInstantRailsに入ってるものを使ってるけど、gemsからインストールしてもrequireするとエラー。

C:/DOCUME~1/ADMINI~1/LOCALS~1/Temp/rb1D1.tmp:1:in `require': no such file to load -- sqlite3 (LoadError)

パスが通ってないっぽいので、RUBYLIBとかGEM_HOMEとか環境変数を色々設定してみたけどダメ。結局、最初にrequire 'rubygems' すればいいということがわかった。検索中に require_gem とか gem ってのもひっかかったけどこれはいつ使うんだ?

手順メモ

  • SQLiteをインストールする。

http://www.sqlite.org/sqlitedll-3_5_1.zipをダウンロードしてC:\InstantRails\ruby\binにコピー。

C:\Documents and Settings\Administrator>gem install sqlite3

サンプルスクリプト

http://www.gesource.jp/programming/ruby/database/sqlite.html を参考にサンプルスクリプトを書いてみる。

require 'rubygems' # ← これが必要
require 'sqlite3'

db = SQLite3::Database.new("data.db")

=begin
sql = <<SQL
create table 社員 (
  名前 varchar(10),
  年齢 integer,
  部署 varchar(200)
);
SQL
db.execute(sql)
=end

=begin
sql = "insert into 社員 values ('橋本', 26, '広報部')"
db.execute(sql)
=end

db.execute('select * from 社員') do |row|
  puts row.join("\t")
end

db.close

おお、動いた。