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 (記載なし)
Copyright © 2013 Power Future Co., Ltd.