PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
17341 | 02/04/26 15:12:23 | RE(5):PB6.5: 動的SQLについて教えてください。 By isii |
17340 | 02/04/26 09:50:01 | RE(4):PB6.5: 動的SQLについて教えてください。 By hokumura |
17124 | 02/03/12 11:51:47 | RE(3):ありがとうございました。 By hokumura |
17121 | 02/03/09 10:42:33 | RE(2):PB6.5: 動的SQLについて教えてください。 By ZONE |
17120 | 02/03/08 14:57:35 | RE(1):PB6.5: 動的SQLについて教えてください。 By M.M |
17115 | 02/03/07 15:14:22 | PB6.5: 動的SQLについて教えてください。 By hokumura |
カテゴリ:データウィンドウ
日付:2002年03月08日 14:57 発信者:M.M
題名:RE(1):PB6.5: 動的SQLについて教えてください。
hokumuraさん、こんにちは。
>いきなりですが、データウィンドウのSQLのWHERE句をスクリプトから
>動的に変更しようと思いまして、過去の記事を参考にやってみましたが
>\"SetSqlSelect\"を使用しても、\"Modify\"を使用しても、
>どうしてもうまくいかないので、教えてください。
>
>str_Work = \'~~\"<スキーマ>~~\".~~\"<テーブル名>~~\".~~\"<列名>~~\"\'
>str_Sql_Old = dw_Work.Describe(\"DataWindow.Table.Select\")
>str_Sql_Where = \" WHERE ( \" + str_Work + \" = ~~\'<値>~~\' )\"
>str_Sql_New = \"DataWindow.Table.Select=\'\" + str_Sql_Old + str_Sql_Where + \"\'\"
>str_Return_Code = dw_Work.Modify(str_Sql_New)
>
>上記のようにスクリプトに記述したのですが、オラクルエラーの「不正な構文です。」
>というエラーが帰ってきてうまくいきませんでした。
modify関数を使用してもできますが、ティルダ(~)の埋め込みが面倒だし難しいので、
PBの世界になれるまでは、データウィンドウのSQL文の動的変更は、getSqlSelectと
setSqlSelectを使った方が簡単ですよ。
ちょっとmodifyに比べると遅いですけどね。まぁ最近は、PCの基本性能が高くなって
いるので、modifyとsetSqlSelectの実行差なんてのは、数値に出てこないかもしれま
せんが。
ところで、getSqlSelectとsetSqlSelectの使い方ですが、過去ログにサンプルPG
がありますので、参照してください。たぶん「getSqlSelect」のキーワードで検索
できるかと思います。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows98
DBMS Oracle SQL*Net 8
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 8.0
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.