ZeosLibのTZQuery

108 views
Skip to first unread message

中村

unread,
Jun 25, 2021, 2:04:15 AM6/25/21
to Japan RAD Studio User Group
こんにちは、中村と申します。
DelphiでZeosLibを使ったDB接続テストをしています。

TZQueryでテーブルを select * でオープンして、それをDBGridに表示させるだけのテストなんですが、データを他のマシンから変更したときに、最新の表示になってくれません。
TZQueryのRefreshやClose,Openとかをやっても最初に開いたときの状態のままです。
プログラムを終了して開き直すことで最新が表示される状況です。

おそらくキャッシュされているだけだと思うのですが、プログラムを終了させずに表示を更新する方法はないでしょうか。
環境はDelphi2007、Zeosdbo-7.2.10、Firebird-1.5になります。
よろしくお願いします。

ML-Sasaki

unread,
Jun 25, 2021, 2:43:22 AM6/25/21
to radstu...@googlegroups.com
中村さんこんにちは、佐々木です。

トランザクションがコミットされていないからではないでしょうか?
ZeosLibのことはよくわかりませんが、コネクションオブジェクトあたりに
トランザクションを操作するメソッドかプロパティがあるかと思います。


2021年6月25日(金) 15:04 中村 <nakafu...@gmail.com>:
--
このメールは Google グループのグループ「Japan RAD Studio User Group」に登録しているユーザーに送られています。
このグループから退会し、グループからのメールの配信を停止するには radstudio-jp...@googlegroups.com にメールを送信してください。
このディスカッションをウェブ上で閲覧するには https://groups.google.com/d/msgid/radstudio-jp/73946ee3-f549-4e16-900b-554cf3d8477cn%40googlegroups.com にアクセスしてください。

中村

unread,
Jun 27, 2021, 9:07:42 PM6/27/21
to Japan RAD Studio User Group
中村です。
佐々木さん、お世話になります。

原因が分かりました。
 TZConnectionのTransactIsolationLevelプロパティが「tiNone」になっていたので、
「tiReadCommitted」に変更したところ期待した動作になりました。
「tiNone」がデフォルト値のようですが、ほかのDBコンポーネントでは気にしたことがなかった
プロパティでしたので盲点でした。

ありがとうございました。


2021年6月25日金曜日 15:43:22 UTC+9 まさと:
Reply all
Reply to author
Forward
0 new messages