« mod_rubyとWEBrickの比較 | トップページ | チェコ共和国から »

2007/08/09

データベース接続用クラス DBConnect

最近PHPからRubyへの移行を進めているのですが、流行物があまり好きではない僕としてはRuby on Railsにどうしても馴染めなくて、PHPで作っていた自分用クラスをRubyに移植する作業を行っています。

その一つとしてデータベースに接続するためのクラスにDBConnectというのがあり、とりあえず動作させることができる程度にはなったので、ここで公開してみようと思います。ちなみにMySQL版とAccess(mdb)版があり、どちらでも同じクラスで利用できるようになっています。

「dbconnect.zip」をダウンロード

クラス名 DBConnect

メソッド

initialize(host, user, pass, database) 初期化処理用
open(host, user, pass, database) データベースを開く(初期化時に実行される)
close() データベースを閉じる
query(sql) SQLを実行(配列の戻り値あり)
exec(sql) SQLを実行(戻り値無し)
sql2array(sql) query実行時に実行され、実行結果を配列に変換
list_fields(table) 指定したテーブルの列名を配列で返す
escape_string(str) 文字列のエスケープ処理

非常に機能不足だと感じられるかもしれませんが、とりあえず動作させることはできます。
使用例は

#!/usr/bin/ruby
 
dbtype = "mysql"
#dbtype = "mdb"
 
case dbtype
when "mysql"
  require 'mysql'
  require dbconnect_mysql.rb
when "mdb"
  require 'win32ole'
  require dbconnect_mdb.rb
end
 
host = "localhost"
user = "test"
pass = "test"
database = "sample"
if dbtype=="mdb" then
  database += ".mdb"
end
 
db = DBConnect.new(host, user, pass, database)
 
sql = "SELECT * FROM test_table"
rs = db.query(sql)
 
i = 0
rs.each do |row|
  print "#{i}¥n"
  row.each do |key, val|
    print "#{key} = #{val}¥n"
  end
  i += 1
end
 
db.close()

ソースを見てもらえばわかりますが、Access(mdb)版はかなり適当です。
またMySQL版にはMySQL/Rubyが必要です。

Ruby初心者なのもので、もし何か意見やアドバイスなどがあれば教えて頂けると助かります。

|

« mod_rubyとWEBrickの比較 | トップページ | チェコ共和国から »

コメント

ちょっとだけ統一感がないかなという気がしました ベル&ロスのBRシリーズはモデルが多く存在します。
画像を良く見てお考えの上、ご入札をお願い致します。
毎月お得なセール情報やお得な情報を配信しています♪是非友達登録をお願いします。
これからベル&ロスの時計の購入をされる方、ベル&ロスの時計をすでにお持ちいただいている方に対して、より多くの情報をご提供することを目的として立ち上げたベル&ロス専門のWEBサイトです。
価格について、正規代理店はもちろん、並行輸入品もぼちぼち各有名店で在庫が入ってきていて、私が調べた限り、かめ吉さんなんかは比較的販売価格も安いと思います。
このような伝統と権威を持つベル&ロスの腕時計は、世界的にも多くのファンを魅了しており、その市場価値も下がることを知りません。
時計のお修理・メンテナンスもお伺い致しております。
「ヴィンテージ」コレクションは、民間航空が台頭し出した1960年代という時代の空気と当時のスポーツウォッチを想起させるものです。
当店は「ベル&ロス」の正規代理店です。
その経済も好調であった1991年という時代に、「アクセサリーの聖地」とも言われるパリにおいてベル&ロスは誕生しました。
ベル&ロスのゴールデンヘリテージを買取致しました。
経験豊富な鑑定士が、満足して頂けるよう精一杯努力致します。
40mmオーバーのケースはモデルで共通ですが、素材やデザインは数多く存在します。
BRコレクションはこれまでミリタリーデザインを共通の特徴としてきたが、「BR05」は一風変わってスタイリッシュな時計として開発された。
通常のステンレスモデルや、文字盤がドクロになっているモデル、針やインデックスなどを含む全てがブラックで統一されている商品などなどです。
付属品が揃っているほど値段が出やすくなります。
1段引き出しで日付変更、2段引き出しで時間調整。
当店、鑑定士も「渋い! ベルトに通した跡や、シワなどは大きな減額にはなりませんが、黒い汚れなど、裏側が傷んでいる場合は査定に影響が出る確率が高いです。
しかし、かんてい局は時計の取り扱いは幅広く行っておりますので、どのようなブランドであってもその時の相場に見合った金額で買取させて頂いておりますのでご安心下さい。
詳細はお電話でもお問合せできます。

腕時計ショップ https://www.cocoejp1.com/NewsDetail.aspx?Id=2019090101062426353

投稿: 腕時計ショップ | 2020/06/03 06:38

コメントを書く



(ウェブ上には掲載しません)




トラックバック


この記事へのトラックバック一覧です: データベース接続用クラス DBConnect:

« mod_rubyとWEBrickの比較 | トップページ | チェコ共和国から »