64ビット版のOSを使うと色々不具合があるもんですね。
今回は、Windows 2008 r2 (「マシンA」と呼びます。)上で動作している 32ビット版の Access を使って、別のサーバー(「マシンB]と呼びます。)にある Oracle に接続したい。
このマシンAには、さらに別のサーバー(「マシンC」と呼びます。)で動作する Oracle ベースのシステムにVB系で作成したアプリからアクセスするシステムが動作しており、64ビットのOracle Client がインストールされています。
この環境で、マシンA上で動作している Access を使って、マシンBの Oracle に接続しないといけなくなり、普通に Access からODBC接続をしようとしたら、ドライバーが見つかりません。
マシンAの管理ツールから ODBCad32.exe を起動したら、ちゃんと使えるようになってます。
ただ、これは、64ビット版なんですね。
syswow64下にある ODBCad32.exe を起動すると、当たり前と言えば当たり前ですが、ドライバーはありません。
前回、マシンA上で動作するSQLServer 64 ビットから Access のMDBファイルにアクセスするための、ODBCドライバーは、64ビット版と 32ビット版の共存ができましたが、
今回はほぼお手上げです。
Access を 32ビット版ではなく、64ビット版にすれば、全て解消かな?
2015年3月11日水曜日
2015年1月21日水曜日
SQLServer からリンクサーバーでつないだOracle に OpenQuery を発行
2015/04/18一部修正
SQLServer からリンクサーバーを使ってOracle に接続すると、データのやり取りが簡単になる上に、SSMSを使って、クエリを作成したり、ストアドを作ったりするのが楽になります。
単に、私がオラクルが苦手なだけなんですけど。
しかし、普通につないで、そのオブジェクトに対して、クエリを発行すると、インデックスが効かないので異常に遅いです。
そこで、アクセスでいうところの、パススルーのような方法があります。
SQLServer では OpenQuery というそうです。
SELECT * FROM OPENQUERY(OraLink, 'SELECT * FROM hoge Where ID = 1')
緑字の部分がリンクサーバー名で、赤字の部分がオラクル用のSQL文です。
赤字の部分が、直接オラクル側で評価されますので、非常に高速です。
SQLServer からリンクサーバーを使ってOracle に接続すると、データのやり取りが簡単になる上に、SSMSを使って、クエリを作成したり、ストアドを作ったりするのが楽になります。
単に、私がオラクルが苦手なだけなんですけど。
しかし、普通につないで、そのオブジェクトに対して、クエリを発行すると、インデックスが効かないので異常に遅いです。
そこで、アクセスでいうところの、パススルーのような方法があります。
SQLServer では OpenQuery というそうです。
SELECT * FROM OPENQUERY(OraLink, 'SELECT * FROM hoge Where ID = 1')
緑字の部分がリンクサーバー名で、赤字の部分がオラクル用のSQL文です。
赤字の部分が、直接オラクル側で評価されますので、非常に高速です。
SQLServer 32ビット or 64ビット No.3
Windows Server 2008 r2 に SQLServer Express 2008 r2 と MS-Office Pro 32ビットという組み合わせに64ビットのODBCドライバーがインストールできました。
完璧です。
感謝感謝!
完璧です。
感謝感謝!
2015年1月19日月曜日
ディスプレイの解像度をバッチ的に変更 No.2
ソフトの名前を書くのを忘れてますね。
Display Changer です。
Display Changer 2 もあります。
http://12noon.com/?page_id=641
Display Changer です。
Display Changer 2 もあります。
http://12noon.com/?page_id=641
SQLServer 32ビット or 64ビット No.2
64ビットのODBCドライバーがインストールできなくて、困っていましたが、
こちらに解決方法を発見した方のページがありました。
まさに、探していた解決方法です。
私はまだ実験できてませんが、早速明日にでもやってみたいと思います。
http://bitdatasci.blogspot.jp/2014/08/32microsoft-office64windows64microsoft.html
こちらに解決方法を発見した方のページがありました。
まさに、探していた解決方法です。
私はまだ実験できてませんが、早速明日にでもやってみたいと思います。
http://bitdatasci.blogspot.jp/2014/08/32microsoft-office64windows64microsoft.html
2015年1月14日水曜日
SQLServer 32ビット or 64ビット
SQLServer をインストールする際、32ビットか64ビットか迷いました。
普通に考えたら、OSがWindows 2008 server r2 64ビットなので、SQLServerも64ビットが入れれますし、メモリー空間も圧倒的に64ビットの方が有利だと思うので、64ビットを選択しました。
ところが、これだとリンクサーバーやOpenRowset で MS-ACCESSのデータを読みに行くことができません。
MS-Officeの64ビット版をインストールすれば行けるのかもしれませんが、32ビット版しか無かったので、入れてしまってます。
困ったなぁ。
普通に考えたら、OSがWindows 2008 server r2 64ビットなので、SQLServerも64ビットが入れれますし、メモリー空間も圧倒的に64ビットの方が有利だと思うので、64ビットを選択しました。
ところが、これだとリンクサーバーやOpenRowset で MS-ACCESSのデータを読みに行くことができません。
MS-Officeの64ビット版をインストールすれば行けるのかもしれませんが、32ビット版しか無かったので、入れてしまってます。
困ったなぁ。
2014年11月20日木曜日
ディスプレイの解像度をバッチ的に変更
これはすばらしいツールです。
ディスプレイの解像度を変更したい場合に、このツールを起動することで、即座に指定した解像度に変更できます。
コマンドラインから起動しますので、バッチファイルをいくつか用意しておけば、ダブルクリックするだけで、目的の解像度に一発変更です。
私の場合は、普段はノートパソコンに外部ディスプレイを接続して、拡張デスクトップにしていますが、時々、ノート側のディスプレイを消して、外部ディスプレイだけで表示したいときがあります。
なので、外部ディスプレイのみ用のバッチファイルと、元に戻す(拡張デスクトップ)用のバッチファイルを用意しています。
使い方は後日に。
ディスプレイの解像度を変更したい場合に、このツールを起動することで、即座に指定した解像度に変更できます。
コマンドラインから起動しますので、バッチファイルをいくつか用意しておけば、ダブルクリックするだけで、目的の解像度に一発変更です。
私の場合は、普段はノートパソコンに外部ディスプレイを接続して、拡張デスクトップにしていますが、時々、ノート側のディスプレイを消して、外部ディスプレイだけで表示したいときがあります。
なので、外部ディスプレイのみ用のバッチファイルと、元に戻す(拡張デスクトップ)用のバッチファイルを用意しています。
使い方は後日に。
登録:
投稿 (Atom)