• ベストアンサー

Microsoft ODBC For Oracle の設定方法

Oracle9iです。 Oracle in OraHome92 のドライバで以下の方法でデータベースに接続していました。 Set ObjConn = Server.CreateObject("ADODB.Connection") ObjConn.open ("DSN=dsn;UID=uid;PWD=pwd") マイクロソフトから出ているドライバもあるということを知ったので、Microsoft ODBC For Oracleで接続するにはどうしたら良いか教えて下さい。 よろしくお願い致します。

  • Oracle
  • 回答数2
  • ありがとう数8

質問者が選んだベストアンサー

  • ベストアンサー
  • Kuppycat
  • ベストアンサー率50% (109/216)
回答No.2

Absolutepageプロパティを使うには、CursorLocationをクライアントに設定すればよかったかと。 ドライバを変える必要はないと思いますよ。

参考URL:
http://homepage2.nifty.com/sak/w_sak3/doc/sysbrd/as_s01.htm
don-doko-don
質問者

お礼

回答、ありがとうございました。 返事が遅れて、大変申し訳ありませんでした。 回答者サンの意見を参考にさせていただきました。 URLを参考にして、うまくいくことができました。

その他の回答 (1)

  • anmochi
  • ベストアンサー率65% (1332/2045)
回答No.1

 コントロールパネル(2000、XPはコントロールパネル→管理ツール)から行います。  dsnという「名前」のODBC接続詞を、Oracle ODBC Driverを用いて作成していると思いますので、それを削除して、今度はMicrosoft ODBC Driver for Oracleを用いてdsnという名前のODBC接続詞を作りましょう。 アドバイス ・間違いなくOracle ODBC Driverの方が性能は良いはずです。MS製をあえて使う理由は見つかりません。 ・何をしようとしているのかを書くと、もっと良いアドバイスが付くかと思います。(~~という言語でOracleにつなぐプログラムを書いている、等)

don-doko-don
質問者

お礼

回答、ありがとうございました。 返事が遅れて、大変申し訳ありませんでした。 アドバイスを参考にしましたら、うまくいきました。 また、質問の書き方について、指摘していただいてありがとうございました!!

don-doko-don
質問者

補足

申し訳ありません。 ASP+VBScriptでOracleをつなげようとしています。 実は、Absolutepageプロパティを使いたいのですがうまくいきませんでした。そこで、MS製を使ってみようかなと。私のやり方がまずいのかもしれませんので、その部分でもアドバイスしていただけると幸いです。

関連するQ&A

  • ASPからDB2への接続方法

    タイトルのとおりですが、ASP(VBスクリプト)からDB2に接続する方法について色々と教えて下さい。 現在は以下のようなソースで”一応”接続できています。 Set objConn = CreateObject("ADODB.Connection") strConn = "DSN=testdb;UID=user;PWD=pass" objConn.Open strConn しかし動作があまりにもっさりしているので他の方法を検討したいのです。 ちなみに上記はADO接続?ODBC接続?なんでしょうか? Oracleのoo4oを使用した接続「CreateObject("OracleInProcServer.XOraSession")」 みたいな方法ってDB2にはないのでしょうか? またそれ以外でも使える方法、あるいはサンプルソースが載っているHP等ありましたら教えて下さい。 「?」ばかりで申し訳ありませんが宜しくお願いします。 尚、環境がまだはっきりしないのですが  WEBサーバ :Win2K          IIS5.0  DB     :DB2 Ver7~8(UNIX版) てな感じになるかと思います。 しかしながら上記のソースはDB2 Ver8 PE(Win版)で使ったテスト用なのです・・・。 宜しくお願いします。

  • excelとoracleの連携

    お世話になります。 インターフェースにexcelを使用し、 oracleをデータベースとして活用した 仕組みを開発したいと考えております。 ネットで下記コードを参照しましたが、 excelのvbaを起動するpcから下記コードで 別のサーバー内のoracleに接続する際、 パスの記述はどの様にしたら宜しいのでしょうか。 また、CONNECTSTRINGに代入する文字列は oracleの何処を調べれば分かりますでしょうか。 なんとも初心者すぎる質問内容で大変恐縮 致しますが、何卒ご教示頂けます様、 宜しくお願い申し上げます。    記 Sub prcAdoOracleDB() Dim adoCON As New ADODB.Connection '(1)ADOを使いORACLEのDBを開きます adoCON.Open "Driver={Microsoft ODBC for Oracle};" & _ "CONNECTSTRING=ADRSORA; UID=HAPPY2; PWD=ISLAND;" '(2)データベースのクローズ adoCON.Close End Sub

  • [ODBC]Oracle接続時のエラー

    初めて投稿させて頂きます。 客先システム(ASPサービス)の保守をすることになり社内に環境を構築したのですが、以下の「※」の行で エラーが発生してしまいます。(エラー内容を確認するため、On Error Resume Nextを一時的にコメントにしてあります) インデントが効かないようなので見辛いと思いますが... [ソース] ------------------------------------------------------------------------------- 'オブジェクトの生成 Set wkdbCnct = Server.CreateObject("ADODB.Connection") 'On Error Resume Next ※→wkdbCnct.Open "DSN=" & DBCNN_DSN & "; UID=" & DBCNN_UID & "; PWD=" & DBCNN_PWD & ";" If Err.Number <> 0 Then Set wkdbCnct = Nothing On Error Goto 0 Response.Redirect DBERROR_URL Exit Function End If -------------------------------------------------------------------------------- [エラー内容] Microsoft OLE DB Provider for ODBC Drivers エラー '80040e4d' [Microsoft][ODBC driver for Oracle][Oracle]ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。 DSN等の設定値を確認するため以下のようなデバッグコードを仕込んで、変数「vPara」を画面に表示させてみました。 [デバッグコード入りソース] ------------------------------------------------------------------------------- Set wkdbCnct = Server.CreateObject("ADODB.Connection") On Error Resume Next wkdbCnct.Open "DSN=" & DBCNN_DSN & "; UID=" & DBCNN_UID & "; PWD=" & DBCNN_PWD & ";" If Err.Number <> 0 Then '↓デバッグ用コード val1 = Err.Number val2 = Err.Description vPara = "" vPara = "DSN=" & DBCNN_DSN & "; UID=" & DBCNN_UID & "; PWD=" & DBCNN_PWD & ";" & " | " & "Err.Number = " & val1 & " | Err.Description = " & val2 Exit Function '↑デバッグ用コード Set wkdbCnct = Nothing On Error Goto 0 Response.Redirect DBERROR_URL Exit Function End If -------------------------------------------------------------------------------- [画面に表示したvParaの内容] DSN=HOGE; UID=USER123; PWD=PASS123; | Err.Number = -2147217843 | Err.Description = [Microsoft][ODBC driver for Oracle][Oracle]ORA-01017: ユーザー名/パスワードが無効です。ログオンは拒否されました。 SQL*Plusで「USER123/PASS123@HOGE」でログインを試みたところ、問題なく接続出来ました。 どういった事が原因として考えられるでしょうか? [AP&DBサーバ] Windows Server2016 Standard IIS Version 10.0.14393.0 OracleDatabase12c(12.2.0.1) + OracleClient12c(12.2.0.1-32bit) 不足している情報等ありましたらご指摘お願いします。

  • オラクル接続をopenしようとすると、時折「致命的なエラーです。」が発生し困っています。

    Windwos2000Server(IIS5)上で ASPにてOracle9.2にODBC接続をしています。 通常は問題なく接続できるのですが、 時折、致命的なエラー(エラー番号:-2147418113)が発生し、 そのあと、別のブラウザでページを呼び出してもオラクルに接続できず、検索結果が表示できなくなってしまいます。 対処法・原因などをご存知の方、お助けください。 エラーの発生するソースです**************************************** Set objCn = Server.CreateObject("ADODB.Connection") With objCn .ConnectionTimeout = 15 .CommandTimeout = 300 .Errors.Clear .Open DRIVER={Oracle in OraHome92};UID=xxx;DBQ=xxx;PWD=xxx; End With **************************************** open の時点で、エラーが発生します。 よろしくお願いいたします。

  • Microsoft ODBC Driver for Oracle について

    MS-AccessをクライアントとしてOracleとODBC接続(DAO使用)を行っています。 1)パススルークエリを使用してレコードセットを取得 2)レコードセット内の値をローカルテーブル(AccessMDB)へ登録 という動作をさせているのですが、Microsoft ODBC Driver for Oracle(2.575.1117.00)を使用した場合、1)で取得したレコード(208レコード)のうち、10レコードしか2)の動作で登録してくれません。 これはどうしてなのでしょうか? ちなみに、ODBCドライバをOracle ODBC Driver(10.1.0.1.0)にすると正常に動作します。ODBC接続を使用したときのロックの動作でOracle製のものは正常に動作しませんでしたので、MS製のものを使用しようと検討しています。 解決策、現象について、ご教授お願いいたします。

  • Windows2008サーバーでODBC接続

    Windows2003サーバーからWindows2008サーバーにしたらODBC接続出来なくなりました。 Windows2003サーバーの時にはうまくいったいたので、いろいろ調べてみたのですが、 64ビットOSで 32bit版ODBC設定は、「C:\Windows\SysWOW64\odbcad32.exe」より行う。 と書いてあったので、そのようにしたのですが、 ODBCのシステムDSNの設定自体は認識しているようなのですが、 「指定された_DSN_には、ドライバーとアプリケーションとのアーキテクチャの不一致が含まれています」 とIISのログに出ます。 ちなみにページのASPの部分に Set conn = Server.CreateObject("ADODB.Connection") Set rs_AP = Server.CreateObject("ADODB.Recordset") conn.open "DB001" と書いています。 データベースはAccess2003で作成したものです。 Access2003がダメなのかと思いAccess2007で作成したものを、Access2007以降のドライバーをダウンロードしてインストールし設定してやってみたのですが、同じ結果でした。 OSのインストールからIISの設定までに何か不備があるのでしょうか? 中途半端な初心者で申し訳ないのですが、手取足取り、ご教授願えないでしょうか? よろしく御願いします。

  • Microsoft ODBC Driver for Oracleをゲットしたい

    こんにちは、IPCといいます。 早速ですが、お尋ねします。 WindowsXPで、Personal Oracle7をインストールして Smileαというソフトをインストールしました。 Smileαは、データベースソフト(販売管理)です。 Smileαのインストール前に、データソースの作成が必要で、 Microsoft ODBC Driver for OracleをシステムDSNに 追加するように書いてあるのですが、これが見当たりません。代わりに Microsoft ODBC for Oracleがありましたので、これを 登録しましたが、Smileαをインストール後、 Smileαの起動時に「Microsoft ODBC Driver for Oracleが開始していません」とエラーが出ます。 Microsoft ODBC Driver for Oracleの方が古い ドライバーのようなのですが、これを得る(インストール)方法をお教えください。 よろしくお願いします。  

  • ASPでAccess接続 ODBCの設定について

    こんにちは。 以前も、ASPでAccessファイルへの接続について、こちらでお世話になりました。 別サーバで作ったショッピングシステムのサーバ移行をしています。 これは別の人が作ったシステムで、社内には誰もわかる人がいません。 (私が簡単なサイトが作れるので、話が回ってきた感じです) ASPで作られているのですが、91個のASPファイルから同一Accessファイルへ接続している作りになっていることが今日分かりました。 コードに直接フルパスを記入するやり方ではなく、ODBCデータソースにファイルを選択してやり、DSN名で呼び出すやり方でコードが書いてあったので、調べてODBCデータソースにDBを選択しました。 しかし、確認するとエラーになり、どうも以前使っていたサーバへ接続しているような感じです。 コードは Set cnn2=Server.CreateObject("ADODB.Connection") cnn2.open DSN名 ODBCデータソースへの設定は、ユーザDSNとシステムDSNに MS Access Driver(mdb)を追加し、追加する際にデータベース部分に接続したいAccessファイルを選択しています。 その時のDSN名を、コードに記載されている名前と同じDSN名にしました。 試しにDSN名ではなくフルパスでAccessファイルに接続したら、問題なく表示されました。 この現象は、以前使っていたサーバのODBCに設定が残っている為、以前のサーバを見にいってしまっているのでしょうか? それとも、単純に私の設定が間違っているのでしょうか? 知識不足で分かりにくい表現ばかりだと思いますが、どうぞよろしくお願い致します。

  • ODBC経由でオラクルに接続

    ASPにてODBC経由でオラクルにADOで接続してデータを表示していますが、GROUP BY 区を追加すると「オブジェクトが閉じている場合は、操作は許可されません」とエラーが発生します。 GROUP BY 区を追加しなければエラーが発生しません。どうしてでしょうか?またこの接続方法の場合JetのSQL関数が使用可能でしょうか? ASPの中身-------------------------------------- cn = Server.CreateObject("ADODB.Connection"); rs = Server.CreateObject("ADODB.Recordset"); cn.Open("DSN=XXXXX;UID=XXXXX;PWD=XXXXX;"); sq=""; sq+="SELECT "; sq+="TTUMIAGK.BUCD "; sq+="FROM "; sq+="TTUMIAGK "; sq+="WHERE "; sq+="TTUMIAGK.BUCD='04' "; sq+="GROUP BY TTUMIAGK.BUCD;";//追加するとエラー rs.Open(sq, cn ,3); while (!rs.eof) { //ここでエラーが発生 j++; %><tr><% for (i=0;i<rs.Fields.count;i++){ %><td><%=rs(i).value%></td><% } %></tr><% rs.movenext(); } rs.close();

  • EXCELからORACLEのテーブルをselectしたいのですが、うま

    EXCELからORACLEのテーブルをselectしたいのですが、うまくいきません。 ご指導のほどお願いいたします。 下記サンプルをネット('Access VBA Tips)で探し実行しました。 Access版だからいけないのでしょうか? adoCON.Open "DSN=company_viewer; UID=jxxx; PWD=yjxxx;" のオープン・クローズは正常終了します。 Set adoCON = Application.CurrentProject.Connection が実行できません。 実行時エラー 438 オブジェクトはこのプロパティまたはメソッドをサポートしていません。 が出てしまいます。 Excelではだめなのでしょうか? 教えてください。 よろしくお願いいたします。 ーーーーーーーーーーーーーーーーーーーーーーーーーーーーー--------------- Sub prcAdoOracleODBC() 'Access VBA Tips '4.3 ORACLEのDBを開く・閉じる/ODBCを使う Dim adoCON As New ADODB.Connection Dim adoRS As ADODB.Recordset '?ADOを使いADRSODBCというデータソースをオープンします adoCON.Open "DSN=company_viewer; UID=jxxx; PWD=yjxxx;" 'データベースのオープン(データベースオブジェクトの作成) Set adoCON = Application.CurrentProject.Connection 'レコードセットの作成(SELECT文の実行) Set adoRS = adoCON.Execute("select * from casUR") 'レコードセットのクローズ adoRS.Close 'データベースのクローズ adoCON.Close 'オブジェクト変数のクリア Set adoRS = Nothing Set adoCON = Nothing End Sub