[解決済み] ORA-01460: 未実装または不当な変換が要求されました。
質問事項
以下の.Netコードを実行すると。
using (var c = Shared.DataSources.BSS1.CreateCommand())
{
c.CommandText = "\r\nSelect c1, c2, c3, rowid \r\nFrom someSpecificTable \r\nWhere c3 = :p0";
var p = c.CreateParameter() as Oracle.DataAccess.Client.OracleParameter;
c.Parameters.Add(p);
p.OracleDbType = Oracle.DataAccess.Client.OracleDbType.Varchar2;
p.DbType = System.Data.DbType.AnsiString;
p.Size = 20;
p.Value = "007";
p.ParameterName = ":p0";
using (var r = c.ExecuteReader())
{
r.Read();
}
}
以下のようなエラーが発生します。
ORA-01460: unimplemented or unreasonable conversion requested
ORA-02063: preceding line from XXX
これは私のデータベースではなく、私が取得するselect文を制御することはできません、そのテーブルはデータベースリンクからIS。
面白いのは、ExecuteReaderの直前に以下のコードを追加すると、正常に実行されることです。
c.CommandText = c.CommandText.Replace("\r\n", " ");
残念ながら、私の場合、SQLを制御することはできませんし、そのように変更することもできないので、良い解決策ではありません。
テーブルそのものは、カラムは c1 数字(5) c2 varchar2(40) c3 varchar2(20)です。
その後に出てくるORA-02063はデータベースリンクのことを指していると思いますが、synonimテーブルを見たところ、database_linkから来るものではありませんでしたし、また、database linkには˶‾‾‾‾˶は影響しないのではと思いました。
バインドパラメータなしでクエリを実行してみましたが、うまくいきました - しかし、再び一般用語でそうするのは悪い習慣です。
困ったことに、.Netベースではない競合ツールが動いているため、一般的な問題とは言えない。
また、私自身の環境では問題を再現できませんでした。これは顧客のデータベースとサイトです。 インスタントクライアント11.1.6.20を使用していますが、インスタントクライアント11.2.3.0でもテストしています。
dbは10で、dbリンクはOracle v8データベースです。
ご協力をお願いします。
解決方法は?
やっと答えが見つかりました!!!
コードを調査し反映させた結果、ParameterのDirectionをinput outputに変更することで問題が解決することがわかりました。
p.Direction = ParameterDirection.InputOutput;
関連
-
オラクル表領域拡張の詳細
-
Oracleにリモート接続するためのPLSQLDeveloperログイン
-
オラクルのファジー・クエリーとその使い方
-
ODBC sqlserverデータソースに接続するためのOracleの詳細な手順
-
plsqlを使用してリモートOracleデータベースに接続する複数の方法
-
[解決済み] エラー ORA-01804 のテキストを取得しようとしているときにエラーが発生しました。
-
[解決済み] Oracle の起動ができません - ORA-00845: MEMORY_TARGET はこのシステムでサポートされていません - しかし、メモリサイズは問題ないようです。
-
[解決済み] ORA-29913: Oracle に csv を挿入する際の ODCIEXTTABLEOPEN コールアウトの実行でエラーが発生しました。
-
[解決済み] ORA-04063: パッケージ本体 "WB_PROD.PLOG" にエラーがあります。
-
[解決済み] ORA-4031 "unable to allocate x bytes of shared memory" を解決する。
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
PLSQLDeveloper14を使用したOracle11gへの接続手順を詳しく伝授
-
Oracle21cをRPMパッケージでインストールする方法
-
Oracle 11g R2 インストールチュートリアル フルバージョン
-
Oracleトレースファイルの詳細な使用方法
-
[解決済み] ORA-12545: ターゲットホストまたはオブジェクトが Mac に存在しないため、接続に失敗しました - SQLPLUS
-
[解決済み] ORA-01950: テーブルスペース 'USERS' に特権がありません [閉鎖]。
-
[解決済み] libclntsh.so.11.1: 共有オブジェクト・ファイルを開くことができません。
-
[解決済み] PLS-00103:次のいずれかを期待しているときに、記号"; "に遭遇しました。
-
[解決済み] PLS-907でライブラリユニットを読み込めない
-
[解決済み] ORA-29283: 無効なファイル操作 ORA-06512: "SYS.UTL_FILE", 行 536 で。