問題タブ [occi]
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.
oracle12c - OCCIでパラメータを名前でバインドしますか?
データベース層を OCI for Oracle 7 から OCCI for Oracle 12c にアップグレードしています。OCI (7) では、ステートメント内のとの位置に関係なく、ステートメント内で値とSELECT * FROM TestTable WHERE name = :2 and number = :1
値をバインドできるように、パラメーターを番号でバインドすることができました。:1
:2
:1
:2
古いコードの上位層によって生成されたステートメントは、多くの場合 の形式SELECT * FROM TestTable WHERE name = :2 and number = :1
であり、パラメーターにバインドされるために後で指定される値は、パラメーターの位置ではなく、パラメーターの番号によって番号順にリストで提供されます。 .
OCI 12c では、位置だけでなく名前でもパラメータをバインドできますが (ただし、明らかに番号ではバインドできません)、OCCI (12c) では、位置によってのみバインドできるようです。値がバインドされるパラメーターの名前/番号しか知らないため、これは明らかに問題を引き起こします。
だから、私の質問は次のとおりです。SQLステートメントを解析して名前を位置にマップする以外に、OCCIで名前または番号でバインドする方法はありますか? 名前でバインドするOCIの可能性を利用するものはありますか?
c++ - Visual Studio 2005 で Oracle ライブラリを使用するアプリケーションを実行しようとしています
OCCI ライブラリを使用する既存のアプリケーションを実行しようとしています。たとえばLinker->Input
、プロジェクトでoraocci10.lib
.
Visual Studio 2005 を使用しています。
これが私がしたことです。
ここから10.2.0.5パッケージをダウンロードしました(1番目と5番目のパッケージ):
http://www.oracle.com/technetwork/topics/winsoft-085727.html
環境変数を設定します(私はOracleクライアントがインストールされているようです):
ORACLE_HOME C:\app\g\product\11.2.0\client_2
TNS_ADMIN C:\app\g\product\11.2.0\client_2\Network\Admin
プロジェクトで oracle ライブラリへのパスを設定します。
C/C++ -> 一般 -> インクルード ディレクトリ: D:\instantclient_10_2\sdk\include
リンカー -> 追加のライブラリ ディレクトリ: D:\instantclient_10_2\sdk\lib\msvc
コード生成 -> ランタイム ライブラリ: マルチスレッド DLL (/MD)
アプリケーションはコンパイルされますが、実行時エラーが発生します。このアプリケーションをスタンドアロンのexeとして実行すると(実行可能ファイルをコンパイルせずに、そのexeも個別に提供されました)、正常に動作し、データベースに接続します。
したがって、これらの OCCI ライブラリに対して Visual Studio を構成する方法が間違っているに違いありません。私が間違ったことを推測できないポイントに近づいているので、私が間違っていたところに助けをいただければ幸いです。
前もって感謝します
linux - gcc 5 での OCCI リンケージ エラー
最近、gcc を 4.1.2 から 5.2.0 にアップグレードしました。
これにより、OCCI ライブラリとのリンケージ エラーが発生しました。
実行しようとしているソースコード:
リンケージ エラー:
未定義の参照に c++11 関連のシンボルが含まれていることに気付きました。これは、使用している新しい gcc コンパイラに関係していると思われます。
occiControl.h からの関数宣言
OCCI_STD_NAMESPACE::string getString(MetaData::AttrId属性)
Centos 6.6 と最新の OCCI バージョンの instantclient-basiclite-linux.x64-12.1.0.2.0 を使用しています。
何か案は?
ありがとう、デビッド
c++ - Visual Studio 2012 : VC++ (MFC) と Oracle OCCI ライブラリを使用した Oracle データベース プログラム
VC++ MFC (Visual Studio 2012) を使用して oracle XE (11.2.0.2.0) データベースに接続しようとしました。以下は、オラクルのウェブサイトで提供されているサンプルコードです。
上記のコードでは、4行がコメントされていますが、正常に動作します。それ以外の場合は、1 つのループ (i=1) に対してのみ機能し、適切なメッセージを表示します (1 回のみ)。その後、以下のエラーが発生します
0x51A4CCC8 (msvcp110d.dll) での初回例外。ブレークを選択すると、ファイル xutility と関数に移動します
- このエラーを解決するにはどうすればよいですか?
- 通常、VC++ MFC を使用してオラクルに接続するためのベスト プラクティスは何ですか?
環境 :
Windows 8.1 (64)
Oracle XE (11.2.0.2.0)
OCCI ライブラリ : Instant Client パッケージ - SDK: Instant Client を使用して Oracle アプリケーションを開発するための追加のヘッダー ファイルとサンプル makefile instantclient-sdk-nt-11.2.0.2 をダウンロードします。 0.zip
Visual Studio 2012 (デバッグ - 構成)
編集
このエラーは、getString() (varchar2 フィールド) の場合に発生します。getInt() で整数フィールドを使用すると、正常に動作します。
c++ - c++ ビジュアル スタジオ 2015 および OCCI
Microsoft Visual Studio 2015 コミュニティ内で OCCI (Oracle c++ 呼び出しインターフェイス) を使用することは可能ですか?
Oracle のダウンロード セクションでは、Visual Studio 2010 以下の OCCI しか見つかりません。VS2010 を使用するには、VS2010 に切り替える必要がありますか?
c++ - OCCI なしで Unix システムから Oracle データベースに接続できますか?
OCCI なしで Unix システムから Oracle データベースに接続できますか? データベース接続を使用するには、Instant Client をインストールする必要がありますか?
提案をお願いします。ありがとう
cmake - CMake で C++ Oracle アプリの OCCI が見つからない
編集:これから十分に変更されたので、新しい質問を開きました。 ここで見つけることができます。
OCCI を使用して C++ で Oracle 12c に接続しようとしています。サポートされているバージョンの Cygwin で CLion2016.1 を使用しています。Windows 7. Oracle インスタント クライアント (ベーシックと SDK の両方) が昨日ダウンロードされました (2016 年 3 月 29 日)
注:C:/Users/hunrt/libs
システム パスに追加されました。
私はちょうどmain.cpp
ファイルを持っています:
この CMake ファイルを使用すると、以下のエラーが発生します。コメントアウトされた find_library() 呼び出しは、私がそれを機能させようとしたさまざまな方法です。それぞれで同じエラー メッセージが表示されます (一度に 1 つしか使用しません)。
CMake ファイル
エラー
find_library() および target_link_libraries() 呼び出しを削除すると、次のエラーが発生します。
私が試したその他のこと
CMakeLists.txt ファイルと同じディレクトリに、libs、dlls、および sym ファイルをプロジェクトに配置しようとしましたが、同じエラー メッセージが表示されます。
どんな助けでも大歓迎です。ありがとう。
usr1234567 からの提案に基づいて編集
CMake ファイル
エラー
Cygwin から MinGW への切り替え
CMake ファイル
上記と同じ main.cpp を使用すると、次のエラーが発生します。