問題タブ [oracle-manageddataaccess]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - oracle.ManageddataAccess が ORA-00928 をスローします: データの挿入中に SELECT キーワードがありません
リモート Oracle DB に接続し、Oracle.ManageddataAccess.dll
更新と挿入の実行に使用しています。ORA-00928: missing SELECT keyword
データを更新することはできますが、挿入しようとすると例外がスローされますが、挿入しようとしているだけです。
そして、それは次のようになります
ヒットExecuteNonQuery()
すると例外がスローされORA-00928: missing SELECT keyword
ます。
これは、SQLサーバーを使用してリンクサービスからOracle DBを挿入できるクエリです
c# - Oracle.DataAccess.Client を使用するベスト プラクティスは何ですか?
少し古いアプリの長いデータ アクセス コードについて説明します。すべての関数は、Oracle DB から何かを選択するためにストアド プロシージャを呼び出しています。すべての関数は多かれ少なかれ以下のコードのように見えます:
私の質問は次のとおりです。
- 一部の関数は、代わりにクラス レベルの OracleConnection 変数を使用します。関数レベルまたはクラスレベル変数のどちらが優先されますか?
- チェックは
dataReader == null
必要ですか?cmd.ExecuteReader()
呼び出し後に NULL になることはありますか? - 接続のクローズ/ディスポーズとリーダーのクローズ/ディスポーズでは、機能が異なります。閉じる/処分する正しい方法/順序は何ですか? 接続が破棄された場合、リーダーは自動的に閉じる/破棄しませんか?
- 近い将来、このプロジェクトに Oracle.ManagedDataAccess.Client を接続したいと考えています。マネージド データ アクセス クライアントで動作するように、このコードに何か変更はありますか?
- その他、ベストプラクティス/提案は大歓迎です。
ありがとうございました。
c# - Entity Framework ORA-00932: 一貫性のないデータ型: 「'expected CLOB got CHAR」
Oracle.ManagedDataAccess.EntityFramework 6.122.1.0 ライブラリは、MVC ASP.Net アプリケーションから Oracle データベースにアクセスするために使用されます。これは、2017 年 11 月 14 日の NuGet の最新ライブラリ バージョンです。
問題があります。これは、非常に長い文字列 (数千文字) が に連結され LONGSTRING
、 を実行するとSelect
次の例外がスローされるためです。
ORA-00932: 一貫性のないデータ型: "'expected CLOB got CHAR"
私のクラスはオーバーライドを取得Expression
する必要があります。GetSelector()
エラーを克服する方法、または回避する方法は? Select
回避する 1 つの方法は、クライアントでEF を強制的に実行することです。どうやってするの?
PS:ロシア語で同じ質問です。
アップデート
MyEntityを提示する必要があります