[#46732] ヒアドキュメント内の変数展開が正常に行われない — ShingoKintaka <kamuycikap@...>

Ruby  :1.8.7 (Ubuntu9.10)

12 messages 2010/01/05
[#46733] Re: ヒアドキュメント内の変数展開が正常に行われない — rubikitch@... 2010/01/06

From: ShingoKintaka <kamuycikap@tulip.ocn.ne.jp>

[#46800] DLモジュールの使い方 — kouichi_someya@...

染谷と申します。

12 messages 2010/01/20
[#47678] プログラム実行時に「[BUG] Segmentation fault」 — 染谷 康一 <kouichi_someya@...> 2010/12/09

染谷と申します。

[ruby-list:46729] Re: MySQLテーブル数の把握

From: Shin-ichiro OGAWA <rust.stnard@...>
Date: 2010-01-05 10:07:17 UTC
List: ruby-list #46729
小川と言います.

RDoc によると,sth.rows で結果の行数が返るようです.
http://ruby-dbi.rubyforge.org/rdoc/index.html
  rows (DBI::StatementHandle)

--------
小川 伸一郎 (Shin-ichiro OGAWA)
   rust.stnard@gmail.com
GPG ID 94B70E36 / 75360751
  fingerprint: {C64E 9826 8A75 723E DE54 / 70A8 F623 220C 94B7 0E36}
http://d.hatena.ne.jp/conceal-rs/
http://twitter.com/conceal_rs/
http://iddy.jp/profile/rust/



2010/1/5  <eiichi_maekawa@mhi.co.jp>:
>
> 前川です。
>
> MySQLのデータで、テーブル数をとりたいのですが、どのようにすればよいのか、途
> 方にくれています。
> dbiを使用するサンプルを見つけ、以下のようなコーディングを実施しましたが、
> テーブル名は取得できましたが、実際に、何個のテーブル名が取得できているのか
> は、
> fetchで、取り出した結果で、個数を求めています。
>
> fetchを使用せず、直接、テーブル名の数を取得するためには、どうすればよい
> か、ご教示いただきたく、
> よろしくお願いします。(ユーザで作成したテーブル数を直接求めるSQL文は、無
> かったと思いますが・・・)
>
> ご指導いただきますよう、お願いします。
>
> バージョンは以下です。
>
> ruby 1.8.7 (2009-06-12 patchlevel 174) [i386-mswin32]
>
> *** LOCAL GEMS ***
> actionmailer (2.3.4)
> actionpack (2.3.4)
> activerecord (2.3.4)
> activeresource (2.3.4)
> activesupport (2.3.4)
> deprecated (2.0.1)
> linecache (0.43)
> mysql (2.8.1)
> rack (1.0.0)
> rails (2.3.4)
> rake (0.8.7)
> ruby-debug-base (0.10.3)
> ruby-debug-ide (0.4.5)
> sinatra (0.9.4)
> sqlite3-ruby (1.2.5)
>
>
> コーディングサンプル
> #!D:/Ruby/bin/ruby.exe -Ks
>
> require 'dbi'
>
> begin
>  dbh = DBI.connect('DBI:Mysql:fbsys:a28341', 'dbuser01', 'dbkey')#←データ
> ベース MySQL に接続
>  sth = dbh.prepare('show tables') #←実行するSQL文を設定
>  puts dbh #←デバッグライト
>  puts sth #←デバッグライト
>  sth.execute #←SQL文を実行し、結果が、sthにはいる。?
>  count = 0         #←テーブル名用カウンタの初期化を実施
>  sth.fetch { |row| #←この部分で、sthから結果(テーブル名)をfetchで取り出
> し、
>    p row           #←この部分で、出力しています。
>    count = count + 1 #←テーブル名もカウンタを+1しています。
>  }
>  sth.finish # sthの終了?
>  puts 'count='+count.to_s #←この部分でcount=n を出力しています。
>
>  #DB例外発生時の処理
>  rescue DBI::DatabaseError => e
>      p "An error occurred"
>      p "Error code: #{e.err}"
>      p "Error message: #{e.errstr}"
>  #切断漏れしないようにensureでdisconnectします。
>  ensure
>      dbh.disconnect if dbh
> end
>
>
> #デバッグライトの結果です。
>
> #<DBI::DatabaseHandle:0x2cd6638>
> #<DBI::StatementHandle:0x2cd61c4>
> ["aplist"]
> ["chistory"]
> ["efbinput"]
> ["fbginput"]
> ["fbinput"]
> ["fbninput"]
> ["kfiletable"]
> ["sffiletable"]
> ["sfiletable"]
> count=9 #count には、テーブル名の数が入っています。
>
>
> 了
>
>
>

In This Thread

Prev Next