PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
13665 | 00/10/23 10:54:48 | RE(2):PB5.0.03: 動的SQLでUPDATEBLOB By SHIMA |
13660 | 00/10/20 23:00:31 | RE(1):PB5.0.03: 動的SQLでUPDATEBLOB By ryochan |
13650 | 00/10/20 17:48:09 | PB5.0.03: 動的SQLでUPDATEBLOB By SHIMA |
カテゴリ:スクリプトの記述
日付:2000年10月23日 10:54 発信者:SHIMA
題名:RE(2):PB5.0.03: 動的SQLでUPDATEBLOB
ryochanさん、こんにちは。
その節は大変お世話になりました!!
>実行時に生成されたUPDATEBLOB文のSQLが
>そのままDBに渡っている気がします。
>(Sybaseには「UPDATEBLOB」なんていう句は存在しない)
やはり、UPDATEBLOBはPBの構文なのですね。お恥ずかしい...。
>isqlで「UPDATEBLOB テーブル名 SET XXX」
>と行ったら、同様のエラーが出ました。
isqlでは未検証でした。
>動的SQLはバインドできないのではないでしょうか?
>単に変数の値で置換しているような気もします。
>「?」を使用するなんてマクロっぽくて非常にあやしい
>と思いません?
う?ん、言われてみれば怪しい(- -;)
>すみません、回避策は私も分かりません。
>(できない、できないばかりいってすみません^^;)
イエイエ、やろうとしている事が見当違いだったということは判ったので。
ありがとうございます!!!
>動的でないとマズイですか?
現在携わっているシステムで、同一またはほぼ同一のテーブル構成を持つ
別のデータベースにデータを移動する機能がありまして。
これは、パイプラインを使用せず、双方のsysobjectsをはじめとする
システムテーブルを参照して、テーブル名、カラム名、属性、値などを取得し、
動的にSELECT/INSERT/UPDATEなどのSQL文を生成して実行する、というものなのです。
データの取得にはDynamicDescriptionArea、DynamicStagingAreaなどを使用しています。
で、既存のテーブル構成にimageカラムを追加したので、ここも動的に出来ないかな?
と言う訳だったのです。
テーブルの変更に左右されないようにと、この様な形で作ったのですが、
imageカラムに対応していなかった事と、imageカラムを更新するにはUPDATEBLOB(?)が必要だということで、
現行のソースをイジって検証していたところでした。
対象テーブル数・約60個のうちの3つなので、
ここだけは涙を飲んで直接テーブル名、カラム名を記述して、
SELECTBLOB、UPDATEBLOBでいこうと思います。
あきらめの早いSHIMAでした!
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS Sybase Open Client/C 11
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Sybase SQL Server System 11
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.