PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
11677 00/06/09 16:14:12 RE(5):PB6.5: SELECTとFROMとWHEREの動的変更なんて出来るのでしょうか? By noki
11638 00/06/08 10:59:45 RE(4):PB6.5: SELECTとFROMとWHEREの動的変更なんて出来るのでしょうか? By こてちゅ
11637 00/06/08 10:34:38 RE(3):PB6.5: SELECTとFROMとWHEREの動的変更なんて出来るのでしょうか? By noki
11631 00/06/07 20:03:27 RE(2):PB6.5: SELECTとFROMとWHEREの動的変更なんて出来るのでしょうか? By M.M
11619 00/06/07 12:41:29 RE(1):PB6.5: SELECTとFROMとWHEREの動的変更なんて出来るのでしょうか? By リエッチ
11601 00/06/06 16:51:20 PB6.5: SELECTとFROMとWHEREの動的変更なんて出来るのでしょうか? By noki

カテゴリ:PowerBuilderの開発環境
日付:2000年06月07日 20:03 発信者:M.M
題名:RE(2):PB6.5: SELECTとFROMとWHEREの動的変更なんて出来るのでしょうか?

nokiさん、こんばんは。

>早速で恐縮ですが、どなたか教えて下さい。
>GetSQLSelectで取得したSELECT文で、特定のテーブル名を変えるにはどうしたら良いのでしょうか?

実験君しました。以下のスクリプトを参照してください。
ただし、
 A.変更前のテーブルと変更後のテーブルの構造は同じである
 B.テーブル名を含むカラム名は存在しない
という前提条件があります。


[テスト環境]
PB:7.0
OS:NT4.0 SP3
DB:Adaptive Server Anywhere 6.0
???????????????????????????????????
//テーブル\"employee\"を、\"employee_100\"に置換します
string sql, sql_org, new_table, old_table, s1, s2
long lRet

sql = dw_1.getSqlSelect()
sql_org = sql
old_table= \"employee\"
new_table= \"employee_100\"

//SQL文の変更
lRet = 1
lRet = pos(sql,old_table,lRet)
do while (lRet>1)
s1 = left(sql,(lRet -1))
s2 = mid (sql,(lRet +len(old_table)))
sql= s1 + new_table + s2
lRet = lRet + len(new_table)
lRet = pos(sql,old_table,lRet)
loop

//データウィンドウのSQL文を書き換えて、検索を実行
dw_1.setSqlSelect(sql)
dw_1.retrieve()

//検索後に元のSQL文に戻す
dw_1.setSqlSelect(sql_org)
???????????????????????????????????



付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows98
DBMS Oracle SQL*Net 8
Browser (記載なし)

Server SoftWare

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

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