0

System.Data.OracleClientを使用してエンタープライズライブラリを使用してOracleデータベースに接続しています。commandType = Textを使用してストアドプロシージャを呼び出します。CommandType = textを使用してSystem.Data.OracleClientを使用してストアドプロシージャを呼び出すことは可能ですか

Microsoft.Practices.EnterpriseLibrary.Data.Database database = null; 

database = DatabaseFactory.CreateDatabase("DbInstanceName"); 
System.Data.Common.DbConnection conn = database.CreateConnection(); 

conn.Open(); 

commandObj = database.GetSqlStringCommand("execute procName('paramValue1','paramValue2')"); 
commandObj.CommandType = CommandType.Text; 
commandObj.Connection = conn; 

returnCode = database.ExecuteNonQuery(commandObj); 

私は、無効なSQL文のエラーを取得しておくと、Oracleへのストアドプロシージャ呼び出しのCommandType.Textを使用することが可能であるかどうかを知りたいです。

CommandType = StoredProcedureを使用することはできません。渡されるコマンド文字列には、文字列内のストアドプロシージャコールに対するすべてのパラメータ値が含まれているためです。これが不可能な場合は、文字列から各パラメータ値を解析し、それらをパラメータオブジェクトに配置する必要があります。

答えて

0

これは可能です。私は自分の問題が "実行"ステートメントであることを発見しました。これは、Oracleストアドプロシージャには必要ありません。

関連する問題