[前][次][番号順一覧][スレッド一覧]

mysql:12978

From: Kazuhiro Yoshida <Kazuhiro Yoshida <moriq@xxxxxxxxxx>>
Date: Sat, 06 May 2006 11:01:55 +0900
Subject: [mysql 12978] Re: ApolloでMySQLに接続するには

もりきゅうです。

wada toshiki wrote:
> C:/project/mysql_apollo.rb:2: in `active=': データプロバイダ/パケットがありませ
> ん (EDatabaseError)
> 
> となります。

> dataset = RDB::SQLClientQuery.new

dataset = RDB::SQLClientDataSet.new
にするといいみたいです。理由はよく分かりません…

あと、RDB::SQLClientDataSetでは更新がキャッシュされるので、反映させるために
form.on_close_query = proc do |sender, can_close|
  p dataset.apply_updates(0)
  true
end
とかする必要があります。

あと、Apollo.exe上で実行するとなぜか固まります。
MySQLに替えてSQLiteを (dbxpressで) 試すと問題ないので、これもdbx adapter
側の問題なのかなあ。
ruby_ap.exe, Apollo.exe -qでは問題なさそうです。

> SQLDataSetであればこのようなエラーにはならずfieldsの内容を確認できたのですが、
> GBGridで単方向のデータセットは対応していないとのことなので...。

ですね…

>>MySQL5.0版のを確認してみると、対応されているようなので、
>>http://www.justsoftwaresolutions.co.uk/delphi/dbexpress_and_mysql_5.html
>>こちらからIndexCursor.pasをいただいて、適用してみるとうまくいきました。
>>
>>というわけで、MySQL4.1版のdbx driverはまだ試行錯誤しないと使えそうにない
>>かもです。
> 
> 「標準MySQL」のままセットアップしてここまでやっときましたが、MySQL5.0を検討した
> 方がいいでしょうか。

MySQL5.0版のdbxpress driverも例えばgetTablesが未実装ですし、実装状況は
4.1版とあまり変わらないように思います。

MySQL4.1を (Ruby on Railsの) ActiveRecord (win32上なのでRuby/MySQLになり
ます) 経由で接続して、Apolloで作ったGUIに渡す形で組んだことがあります
が、DBGridを使いたいとなると、RDB経由になりますね…

DelphiからMySQLを使うときはみなさんどうしてるのか、ぐぐってみたところで
は、dbxpress経由ではなく、直接MySQLクライアントDLLを呼ぶライブラリを使う
のが一般的なようです。Rubyでいうと、MySQL/Rubyを使うということですね。
そのほかODBC, ADO経由にするようです。


[前][次][番号順一覧][スレッド一覧]

     12973 2006-05-03 11:54 [wada toshiki <wada-t] ApolloでMySQLに接続するには             
     12974 2006-05-03 15:52 ┗[Kazuhiro Yoshida <mo]                                       
     12975 2006-05-04 11:29  ┗[wada toshiki <wada-t]                                     
     12976 2006-05-05 03:57   ┗[Kazuhiro Yoshida <mo]                                   
     12977 2006-05-05 12:22    ┗[wada toshiki <wada-t]                                 
->   12978 2006-05-06 11:01     ┗[Kazuhiro Yoshida <mo]                               
     12979 2006-05-06 19:35      ┗[wada toshiki <wada-t]