sql >> データベース >  >> RDS >> Oracle

Oracleでvarchar2としてパラメータを出力するにはどうすればよいですか?

    OracleParameterCollection.Add 方法。誤って間違った電話をかけたようです。

    必要なのは追加(文字列、OracleDbType、int、object、ParameterDirection) 、この場合、 objectの値が欠落しているだけです。 パラメータ。このパラメータには、使用しているOracleパラメータの初期値が含まれている必要があります。ただし、あなたの場合、初期値は out であるため、重要ではありません。 パラメータ。 nullを追加します 50の後 ストアドプロシージャの呼び出しは成功するはずです。

    呼び出したのは Add(文字列、OracleDbType、オブジェクト、ParameterDirection) 。サイズ50 パラメータの初期値として解釈されています。 Oracleが返すエラー(「数値または値のエラー」)を解釈する方法がわかりません。これは、Oracleが文字列を数値に変換しようとして失敗したことを意味します。おそらく値50 タイプOracleDbType.Varchar2をオーバーライドします したがって、Oracleは文字列ではなく数値を期待していますか?

    私が見つけた別の問題がいくつかありました:

    • command.Parameters ["SP_REQ_NUM"]を実行する必要があります command.Parameters ["SP_NUM"]である ?
    • ストアドプロシージャは数値を返しません。 Convert.ToInt32を呼び出す 201405 001などの文字列 失敗します。



    1. SQLite参加

    2. 情報システム、データおよび情報

    3. mysqlでクエリの分離レベルを表示する

    4. ストアドプロシージャをサポートするnodejs上のmysqlのドライバーはありますか?