問題タブ [oracle11gr2]
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.
windows-7 - System.Data.OracleClient に 64 ビット Oracle ドライバーを使用するように指示する方法
System.Data.OracleClient
Win7 x64 ワークステーションで使用する .NET アプリケーションを実行しようとしています。ワークステーションには 32 ビットの Oracle クライアントがインストールされているため、次のエラー メッセージが表示されます。
Oracle クライアント ライブラリをロードしようとすると、BadImageFormatException がスローされました。この問題は、32 ビットの Oracle クライアント コンポーネントがインストールされている状態で 64 ビット モードで実行している場合に発生します。
だから、これは私の試行錯誤の長い旅です:
- Oracle クライアントwin64_11gR2_clientをインストールしようとしました。しかし、セットアップ プロセス中にコメントなしでクラッシュします。
- 別の SO スレッドからの回答に従い、instantclient-basic-windows.x64-11.2.0.2.0を試して抽出し、バイナリを含むフォルダーを Windows PATH 変数に入れました。ただし、(再起動後でも)同じエラーメッセージが表示されます。
- この回答の「別の方法」に従い、ファイルoci.dll、orannzsbb11.dll、およびoraociei11.dllを Web サイト プロジェクトの bin/ フォルダーにコピーしました。それでも同じエラーメッセージです。
- インスタントクライアントからすべてのファイルをそのディレクトリにコピーして再試行しましたが、成功しませんでした。
- ODAC112021Xcopy_x64.zipをインストールし、インストール フォルダーと bin フォルダーを Windows PATH 変数に入れました。失敗。
- 私はこの答えに希望を置き、レジストリのDllPathを確認しました (これは実際には ODP.NET ではなく ODP.NET に関連していると想定されて
System.Data.OracleClient
います)。DllPath が ODAC の正しい x64 インストールを指していることがわかりました。を使用System.Data.OracleClient
すると動作するはずですが、それを使用しているため、まだ失敗しています。 - 私はグーグルでスタックオーバーフローしましたが、すでに参照した投稿以外に何も見つかりませんでした。
- 賢明な SO ユーザーから洞察に満ちたアドバイスを得ることを期待して、この SO の質問を慎重に作成しました。
b_levitt から最初の回答を得た後、次の行を Global.asax at に追加してみました
Application_Start
。C:\OracleProducts\Odac-11.2.0.2.1-x64 は、ODAC 64 ビット xcopy バージョンをインストールした場所です。どちらも成功しません。
関連して、.NET アプリを強制的に 32 ビット モードにしようとしても成功しませんでしたが、それは別のことです。将来を見据えたソリューション、つまり 64 ビットが必要です。
range - Oracleバケット値
さまざまな範囲の値の数を取得するクエリを作成しようとしています。
私のテーブルに「Name」という列と「Value」という数値の別の列があるとします。
「値」列は、1から100までの値を取ることができます。
現在、私は次のようなクエリを書いています
クエリは結果を表示しますが、veeeeeerrrrrySLOWを実行しているようです。
これを行うためのより良い方法はありますか?
他の列もあるので、「値」列の値に基づいてテーブルを分割できないことを覚えておいてください。
編集
上記のクエリを次のように変更します
oracle - データベースが開いていません
Windows 2008 サーバーで Oracle 11g R2 を使用してデータベースを作成しようとしています。スクリプトを実行してデータベース インスタンスを作成すると、次のエラー メッセージが表示されます。
ERROR at line 1:
ORA-01109: database not open
grant select on ALL_MVIEW_DETAIL_PARTITION to public with grant option
*
ERROR at line 1:
ORA-01109: database not open
管理者としてログオンしました。
ありがとう、usermma
oracle - Oracle 07 辞書のアクセシビリティ
オラクルで 07_DICTIONARY ACCESSIBILITY に出会いました。デフォルト値が true に変更されると、データ ディクショナリにどのような違いが生じるかを確認したいと思います。このトピックに関する Web 上の適切なヘルプが見つかりません。Oracle 11Gリリース2でこのアクセシビリティを実装するにはどうすればよいですか.
oracle - サブクエリでインデックスを使用するためのヒントoracle--OracleSQl
次のような質問があります
table_tにはインデックスがなく、738,000行あり、table_vにはidにインデックスがあり、158,000行あります。
クエリは現在、10秒で結果をフェッチします。
Explainクエリプランは全表スキャンを示しています。ここでパフォーマンスを向上させるにはどうすればよいですか?
table_tのidにインデックスを追加すると、役に立ちます。サブクエリで使用しているので?
sql - 日付間隔外の重複の検出
SOで検索しましたが、直接的な答えが見つかりませんでした。
患者、病院、診療科(ER、泌尿器科、整形外科、内科など)、診療コード(検査、外科手術、MRI、超音波、その他)、患者の診察日があります。
患者は医者を訪ね、医者は薬を処方し、コントロールチェックのために再び来るように頼みます. 患者が10日後に戻ってきた場合、同じ病院に別の検査料を支払う必要があります. 病院は、検査料を受け取るために、次の 10 日間に利用可能なスロットがないことを告げて、10 日後に日付を指定する場合があります。
テーブル構造は次のようになります。
ここでは、訪問患者No. 3および5は、患者No.3 人は別の病院を訪れ、患者 5 は別の診療所を訪れます。10日以内に来院しても受験料はかかります。
ただし、患者番号 1 は、01/05 と 14/05 に同じ病院、同じ支店を訪れ、同じプロセス (P1: 検査) を受けます。
26/05は健康診断ではないので数えません。
私がフラグを立てたいのは、同じ患者、同じ病院、同じ支店、同じ診療コード (具体的には健康診断: P1 ) で、日付範囲が 10 日を超えていることです。
結果のテーブルの形式:
ありがとう。
oracle - 安全な区間演算
このクエリはエラーで機能します
、これは:
戻り値
INTERVAL
では、リテラルを使用して間隔を追加する安全な方法はありますか?
java - oracle.sql.ARRAYオブジェクトを作成するにはどうすればよいですか?
この質問は、私の元の問題に関連しています。JavaからPL /SQLに配列を返す方法は?、しかしより具体的です。
『 Oracle Database JDBC開発者ガイド』を読んでいて、
しかし、私はまだARRAYを使用して作成できる最小限のコードを書くことができません
ARRAYオブジェクトの作成の指示に従います。
OracleDatabaseJVMを使用しています。
私は以下を試しました:
例1
失敗する:
例2
失敗する:
免責事項:私は(まだ)Javaプログラマーではありません。
oracle - Oracle 11g のトップ N クエリは、10g で実行されている同じクエリに対して異なる値を返します
この問題の単純な例を作成しました。次のクエリは、order by 句に存在しないすべての列に対して null を返します。10g に対してクエリを実行すると問題ありません。これは、トップ n クエリの基本的な実装です。
内部の select ステートメントが非効率的であることはわかっていますが、SQL は生成されます (必要に応じてエンジンを変更できます)。
すべてのヘルプは大歓迎です!
オラクルのバージョンは 10.2.0.1 です。
Windows 2008 R2 x64 で動作しています
11gの計画の説明
10gの計画を説明する
oracle - Oracle 11g で ExtProc に接続できない
同じリスナーを使用している 1 つのサーバー (両方とも 11g) に 2 つの Oracle インスタンスがあります。extproc への接続に問題があります。
TNSNAMES.ORA
リスナー.ORA
TNSPING を使用して接続を確認すると、次のようになります。
/home/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora
$tnsping EXTPROC_CONNECTION_DATA
Linux 用 TNS Ping ユーティリティ: バージョン 11.2.0.1.0 - 2011 年 11 月 3 日 14:03:41 の本番環境
著作権 (c) 1997 年、2009 年、オラクル。全著作権所有。
使用されるパラメータ ファイル:
TNSNAMESアダプタを使用してエイリアスを解決しました 連絡を試みています (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC11G))) (CONNECT_DATA = (SERVICE_NAME = PLSExtProc11g))) TNS-12541: TNS:リスナーがありません
両方のデータベースを正常に tnsping できますが、EXTPROC_CONNECTION_DATA はできません。