PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
21054 04/04/12 08:53:28 RE(2):PB6.5: INSERT文記述エラーについて By aokazumajin
21053 04/04/09 20:01:19 RE(1):PB6.5: INSERT文記述エラーについて By isii
21052 04/04/09 17:03:58 PB6.5: INSERT文記述エラーについて By aokazumajin

カテゴリ:スクリプトの記述
日付:2004年04月09日 20:01 発信者:isii
題名:RE(1):PB6.5: INSERT文記述エラーについて

aokazumajinさん、こんばんは。

>データウィンドウの項目を別のデータウィンドウにinsert文で挿入する処理を行いたいのですが、
>insert文で構文エラー、未定義ですと表示されます。insert文のどこで構文エラーか分かりません。
>ご教授を宜しくお願いします。
>この構文はリストボックスのselectchangeイベントで作成しているのですが、
>何か関係があるのでしょうか?

>string ls_A,ls_B
>integer ix
>ix = 1
>ls_A = dw_A.GetItemString(ix,\'col_A\')
>ls_B = dw_A.GetItemString(ix,\'col_B\')

>// 挿入先のデータウィンドウ名 = 例(dw_D)    (テーブル名 = TBL_C)

>insert into TBL_C(TBL_C.COL_d,TBL_C.COL_d) values (:ls_A,:ls_B);
>UPDATE TBL_C SET TBL_C.COL_d =  :ls_A WHERE TBL_C.COL_d =:ls_A using sqlca; 
>COMIT;
>dw_D.retrieve();
テーブルの内容がわかりませんが、埋め込みSQLの使い方に間違いがあると思います。
insert into TBL_C ( TBL_C.COL_d ) values ( :ls_A );
insert into TBL_C ( TBL_C.COL_d ) values ( :ls_B );
COMMIT;

なお、データウィンドウを使用してのINSERTは以下のようになります。
long row
dw_D.SetTransObject( sqlca )
row = dw_D.InsertRow( 0 )
dw_D.SetItem( row, \"col_d\", dw_A.GetItemString( 1, \"col_A\" ) )
row = dw_D.InsertRow( 0 )
dw_D.SetItem( row, \"col_d\", dw_A.GetItemString( 1, \"col_B\" ) )
if dw_D.Update() <> 1 then
  ROLLBACK;
else
  COMMIT;
end if

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows 2000
DBMS Sybase SQL Anywhere Client
Browser (記載なし)

Server SoftWare

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

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