PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
3847 98/11/04 17:57:49 RE(3):ありがとうございました。 By てとらぽっと
3846 98/11/04 17:20:29 RE(2):ありがとうございました。 By taitai
3811 98/11/02 11:46:17 RE(1):とりあえず、主キーの見つけ方だけ By てとらぽっと
3801 98/10/30 18:45:44 PB5.0.03: 更新処理ができない・・・ By taitai

カテゴリ:データウィンドウ
日付:1998年11月04日 17:20 発信者:taitai
題名:RE(2):ありがとうございました。

非常に参考になりました。
どうもありがとうございました。更新できました。
DECLAREとFETCHを使って主キーの設定ができました。
同じような質問ばかりですみませんでしたが、助かりました。
もっと勉強して、僕も誰かの手助けになればと思います。
とりあえず、こんな形です↓

SELECT   Count(*) 
  INTO   :主キーカラム行数 
  FROM    \"USER_CONSTRAINTS\",
  \"USER_IND_COLUMNS\"
  WHERE   \"USER_IND_COLUMNS\".\"INDEX_NAME\"      = \"USER_CONSTRAINTS\".\"CONSTRAINT_NAME\" AND
     \"USER_CONSTRAINTS\".\"OWNER\"           = OWNER AND
          \"USER_CONSTRAINTS\".\"TABLE_NAME\"      = TABLENAME AND
          \"USER_CONSTRAINTS\".\"CONSTRAINT_TYPE\" = \'P\'
USING SQLCA;

で、行数があれば

DECLARE カーソル名 CURSOR FOR
SELECT   \"USER_IND_COLUMNS\".\"COLUMN_NAME\"
  FROM   \"USER_CONSTRAINTS\",\"USER_IND_COLUMNS\"
 WHERE   \"USER_IND_COLUMNS\".\"INDEX_NAME\"      = \"USER_CONSTRAINTS\".\"CONSTRAINT_NAME\" AND
 \"USER_CONSTRAINTS\".\"OWNER\"           = OWNER AND
       \"USER_CONSTRAINTS\".\"TABLE_NAME\"      = TABLENAME AND
      \"USER_CONSTRAINTS\".\"CONSTRAINT_TYPE\" = \'P\'
ORDER BY \"USER_IND_COLUMNS\".\"COLUMN_POSITION\" ASC
USING SQLCA_LOCAL;

として、カーソルをオープンして

FOR 1?主キーカラムの行数
FETCH カーソル名 INTO :主キーカラム;
dw_new.Modify(主キーカラム + \".Update = Yes\")
dw_new.Modify(主キーカラム + \".Key = Yes\")

で、カーソルをクローズして設定できました。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

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

Server SoftWare

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

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