PB 電子会議室
発言No. | 更新日 | 題名(クリックすると発言内容と関連するコメントが表示されます) |
---|---|---|
6795 | 99/06/16 10:08:44 | RE(8):PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。 By st1974 |
6745 | 99/06/14 16:06:25 | RE(7):PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。 By Taka |
6742 | 99/06/14 14:40:25 | RE(6):PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。 By Potato |
6733 | 99/06/14 12:58:53 | RE(5):PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。 By Taka |
6730 | 99/06/14 11:13:50 | RE(4):PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。 By st1974 |
6728 | 99/06/14 11:00:02 | RE(3):PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。 By Taka |
6726 | 99/06/14 10:12:48 | RE(2):PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。 By st1974 |
6709 | 99/06/11 16:24:51 | RE(1):PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。 By Taka |
6698 | 99/06/10 17:26:14 | PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。 By st1974 |
カテゴリ:PowerBuilderの開発環境
日付:1999年06月14日 14:40 発信者:Potato
題名:RE(6):PB5.0.04: SQLCAによるストアドプロシージャ使用時にアプリケーションで落ちてしまいます。
st1974さん、こんにちは。
>Takaさん、おはようございます。
>返答が遅れてしまい申し訳ありません。
>
>>確かに良く解らない現象ですね。ところで、RPCFUNCによる外部関数の宣言に誤りはありませんか?
>>念のため、CREATE PROCEDURE のヘッダ部分と、外部関数の宣言の内容,呼び出す時の書き方を
>>教えてください。
>
>[外部関数の宣言] ※AAAがストアドプロシージャの名称です。
>subroutine AAA(string a,string b,string c,string d,ref string e) RPCFUNC
>
>[呼び出す時の書き方]
>SQLCA.AAA(\"SSS\",a,b) ※PBのスクリプトで左記のように呼び出しています。
>
>[CREATE PROCEDUREのヘッダ部分]
>CREATE OR REPLACE PROCEDURE AAA
>(
> a IN VARCHAR2
> b IN VARCHAR2
> c IN VARCHAR2
> d IN VARCHAR2
> e out VARCHAR2
>)
>
e outの引数はREFなので、SQLCA.AAA(\"SSS\",a,...)の呼び出しの前に
e = space(20)
とかのように、最大の文字列の長さで空白を入れておかないといけませんが、
その空白を呼び出し前に入れていますか?
そうしないと、書き込みの領域が用意されていないため、
メモリが上書きされて壊れてしまいます。
RPCFuncでのStringでREFで呼び出す場合は、外部関数の呼び出しと同じような
配慮が必要です。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows95
DBMS その他
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Oracle 7.2
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.