PB 電子会議室

コメント

発言No. 更新日 題名(クリックすると発言内容と関連するコメントが表示されます)
8617 99/10/07 12:36:27 RE(4):PB6.5: PB65からoracle8ストアドプロシージャが実行できなくなりました。 By リエッチ
8595 99/10/06 18:04:13 RE(3):PB6.5: PB65からoracle8ストアドプロシージャが実行できなくなりました。 By Taka
8591 99/10/06 17:33:07 RE(2):PB6.5: PB65からoracle8ストアドプロシージャが実行できなくなりました。 By shinsuke
8587 99/10/06 15:14:24 RE(1):PB6.5: PB65からoracle8ストアドプロシージャが実行できなくなりました。 By Taka
8562 99/10/05 21:01:08 PB6.5: PB65からoracle8ストアドプロシージャが実行できなくなりました。 By shinsuke

カテゴリ:PowerBuilderの不具合?
日付:1999年10月06日 15:14 発信者:Taka
題名:RE(1):PB6.5: PB65からoracle8ストアドプロシージャが実行できなくなりました。

shinsukeさん、こんにちは。
まだレスが付いていないようでしたので...(^^;

>PowerBuilder6.5からOracleのストアドプロシージャを呼び出しているのですが、エラーが発生してしまいます。
>(するようになってしまいました。が本当のところです。)

これは、「PB6.5 & Oracle7.xなら問題なかった」の意味ですか?

>そのエラーは
>ORA-0650 行1、行21
>PLS-00302:コンポーネント SHRF2SMF を宣言してください。
>ORA-0650 行1、行21
>PL/SQL Statement ignored
>と出ます。

エラーメッセージからは、接続先DBに SHRF2SMF というオブジェクトが存在しない という事になると
思いますが...そうではないんですよね?。
確認したいのですが、これっていわゆるストアドプロシージャですよね?
パブリックシノニム経由とか、DATABASE LINKとかを要するものではないですよね?

>ちなみに、プロシージャ shrf2smf(変数名 date) はスキーママネージャで確認するとvalid状態で、
>sqlplus環境では実行できます。

SQL*Plusでの接続先と、PBアプリでの接続先は、全く同一ですか?

>string sqlstring
>datetime dt
>dt=datetime(date(\'1999/10/01\'))
>sqlstring=\"execute shrf2smf(to_date(\'\"+string(dt,\"yyyy/mm/dd\")+\"\',\'yyyy/mm/dd\'))\"
>execute immediate :sqlstring;
>この後sqlcodeのチェック

こちらで同じようなプロシージャを作ってみました。問題なく動きましたけど。(^^;

また、動的SQL・書式2ではどうでしょうか。
datetime dt
dt=datetime(date(\'1999/10/01\'))
prepare sqlsa from \"execute shrf2smf(?)\" ;
execute sqlsa using :dt ;
messagebox( string(sqlca.sqlcode), sqlca.sqlerrtext )
※ オブジェクトが存在しない、というエラーが出ている以上、変化ないと思いますが...


ちなみに WinNT4 & PB6.5、SQLCA.DBMS = \"o84\" でテストしています。

付加情報:

PowerBuilder Version (記載なし)

Client SoftWare

OS Windows NT 4.0
DBMS Oracle SQL*Net 8
Browser InternetExplorer5.X

Server SoftWare

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

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