PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
3442 98/09/29 16:30:42 RE: もう解決されたようですが、SELECT FOR UPDATE句について By てとらぽっと
3422 98/09/28 13:07:45 RE:RE:RE:PB5.0.02: 複数ユーザーで使用した時のDWの更新処理について By しん
3408 98/09/26 15:28:09 RE:RE:PB5.0.02: 複数ユーザーで使用した時のDWの更新処理について By Ryuu
3313 98/09/21 14:34:26 RE:RE:RE:PB5.0.02: 複数ユーザーで使用した時のDWの更新処理について By てとらぽっと
3310 98/09/21 13:10:57 RE:RE:PB5.0.02: 複数ユーザーで使用した時のDWの更新処理について By あすかちゃんの父
3306 98/09/21 10:39:26 RE:PB5.0.02: 複数ユーザーで使用した時のDWの更新処理について By てとらぽっと
3304 98/09/19 16:39:40 PB5.0.02: 複数ユーザーで使用した時のDWの更新処理について By Ryuu

カテゴリ:旧電子会議室
日付:1998年09月21日 10:39 発信者:てとらぽっと
題名:RE:PB5.0.02: 複数ユーザーで使用した時のDWの更新処理について

Ryuuさん、こんにちは。

>PB5.0のDWの更新は、マルチユーザー環境ではどういうふうに動くのでしょうか。
>Aという人とBという人がいます。その2人が同じテーブルをSELECTし、各々の
>修正を行に加えます。そして更新すると、先に更新した人の変更は有効になり、
>後から更新した人は、エラーで返ってきます。DWの更新特性すべて試しましたが
>エラーでした。
>SQL文のようなSELECT?FOR UPDATEみたいに検索行をロックかけたりする方法は、
>ありますか?

[デザイン] → [SQL構文の編集] メニューを実行して、直接 SQL構文を書けば
SELECT FOR UPDATE句のようなペインタが対応していないSQL構文でも発行できます。
注意すべきは、[グラフィックス表示へ変換] してはいけないことです。
対応していない句は(メッセージもなく)削除されてしまいます。


>また、エラーが発生したらその行を飛ばして、次の行を更新したい場合、どの
>ようにすれば良いのでしょうか?
>そもそも、DWは、変更した行とか、変更されてない行の違いがわかるのに
>Update関数は、全行更新していませんか?

そうですね。
DWコントロールのイベント SQLPreview で更新される row をチェックしておいて、
エラーがあればその row を操作してやればいいかもしれません。
(やったことないので、保証はないです...)

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows95
DBMS Oracle SQL*Net 2.0
Browser (記載なし)

Server SoftWare

OS (記載なし)
DBMS Oracle 7.2
WebServer (記載なし)

PowerSpaceの運営は、パワーフューチャー株式会社が行っております。
Copyright © 2013 Power Future Co., Ltd.