C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[2]: VB.NetでパッケージのCreate文を発行するとエラー


(過去ログ 97 を表示中)

[トピック内 3 記事 (1 - 3 表示)]  << 0 >>

■57486 / inTopicNo.1)  VB.NetでパッケージのCreate文を発行するとエラー
  
□投稿者/ hiro (7回)-(2011/03/01(Tue) 11:38:47)

分類:[VB.NET/VB2005 以降] 

2011/03/01(Tue) 11:42:10 編集(投稿者)
2011/03/01(Tue) 11:42:00 編集(投稿者)

hiroと申します。
よろしくお願いします。
開発環境は VisualStudio2005とOracle9iです。


現在パッケージのCreate文をVB.Netを介して発行するプログラムを作っているのですが、いざ行ってみるとエラーが発生してしまいます。

====================================================
VBソース
conn = New OracleConnection
conn.ConnectionString = "USER ID=" + sUser + ";PASSWORD=" + sPass + ";DATA SOURCE=" + sDB
conn.Open()
tran = conn.BeginTransaction
cmd = conn.CreateCommand
cmd.Transaction = tran
cmd.CommandText = sSQL
cmd.ExecuteNonQuery()

tran.Commit()
====================================================
発行したSQL
CREATE OR REPLACE PACKAGE PACK_TEST IS

--* 作成日 :2099/09/09
--* 機能 :メイン
PROCEDURE PROC_MAIN(
PO_RESULT OUT NUMBER,
PO_MSG OUT VARCHAR2
);

--* 作成日 :2099/09/09
--* 機能 :数値判定
FUNCTION FC_IS_NUMBER(PI_STR IN VARCHAR
) RETURN BOOLEAN;

END PACK_TEST;
/
====================================================
オブジェクトブラウザに登録されたソース
CREATE OR REPLACE PACKAGE PACK_TEST IS



--* 作成日 :2099/09/09

--* 機能 :メイン

PROCEDURE PROC_MAIN(

PO_RESULT OUT NUMBER,

PO_MSG OUT VARCHAR2

);



--* 作成日 :2099/09/09

--* 機能 :数値判定

FUNCTION FC_IS_NUMBER(PI_STR IN VARCHAR

) RETURN BOOLEAN;



END PACK_TEST;



/

====================================================


上記SQLをプログラムで発行し、オブジェクトブラウザで見てみると、
【PLS-00103:記号""が見つかりました。】というコンパイルエラーになってしまいます。
ソースに問題がないのは確認済みで、再コンパイルを手動で行うと上記のエラーは発生せず、コンパイルに成功します。

最初からコンパイルが成功した状態にするには、どのようにすれば良いのでしょうか。
また、何故登録後のソースは1行おきに改行されてしまっているのでしょうか。


ご解答、よろしくお願いします。






引用返信 編集キー/
■57791 / inTopicNo.2)  Re[1]: VB.NetでパッケージのCreate文を発行するとエラー
□投稿者/ 匿名 (2回)-(2011/03/15(Tue) 18:12:44)
ほい。
http://dobon.net/cgi-bin/vbbbs/cbbs.cgi?mode=al2&namber=28318&rev=&no=0
引用返信 編集キー/
■57851 / inTopicNo.3)  Re[2]: VB.NetでパッケージのCreate文を発行するとエラー
□投稿者/ hiro (12回)-(2011/03/18(Fri) 09:18:23)
hiroです。

SqlPlusからCreate文のスプリクトを実行すれば
下記の問題を回避出来るようだったので、
一度SQLをバッチファイル化し、
VB側からSqlPlusを起動して対応することが出来ました。

自己解決ということで、終了いたします。
解決済み
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -