Oracleによるリンクテーブル接続エラー

このQ&Aのポイント
  • ASPで作成したWebシステムでOracleのリンクテーブルに接続する際にエラーが発生しています。
  • ODBCを利用してアクセスしてもエラーが発生し、Web上でのデータ抽出ができません。
  • サーバの設定やパスワードの入力などを確認しても問題が解決しません。
回答を見る
  • ベストアンサー

Oracleによるリンクテーブルでの接続エラー

よろしくお願い致します。 今、ASPによるWebシステムを作成しています。 データはSQLserver・accessによって管理しています。 システムを動作させているサーバをAとします。 同じネットワーク上のBというサーバのOracleDB内の、ある情報の入ったテーブルを、A上のaccessからリンク(地球のマーク)しています。 そのリンクテーブルを参照して、AのWebシステムを動作させるところ(Select文によるデータ抽出)があります。 しかし、エラー「ODBC--"XXXXX"への接続が失敗しました。」と出てしまいます。 接続にはODBCを利用しており、accessを開いて直接テーブルを見ようとすれば見れます。 しかし、Web上で動作させようとするとエラーが出ます。 何が原因と考えられますでしょうか? ご教授お願い致します。 補足ですが、 OracleのバージョンはA、B共に同じです。 A:Win2000server 、B:Win2003server tnsnames.oraは修正してあり、テーブルも参照は出来ているので問題ないと思います。 Aのaccess(リンクテーブル)からBのテーブルを参照するにはパスワードが必要ですが、レジストリの設定により入力不要にしています。

  • Oracle
  • 回答数1
  • ありがとう数0

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

  • ベストアンサー
  • 3rd_001
  • ベストアンサー率66% (115/174)
回答No.1

Webうを動かしているOSユーザの権限はどうなっているのでしょうか。 IISで動かしていると思いますが、IISの実行ユーザが参照できてますか。 手動で使用したユーザとIISの実行ユーザとの差を確認してください。

関連するQ&A

  • AccessとDB2のテーブルリンクで…

    お世話になります。 ある2台のサーバーが社内にあります。 その2台のサーバーにはそれぞれ、IBMのDB2というデータベースを使用していて、それぞれのDB2内には同じデータベース名(テーブル)が存在します。 現在、サーバーAから新サーバーBに社内WEBシステムの移行を行っていて、Access2000のテーブルリンクを使って、サーバーAにあるDB2のデータベースAのテーブルとリンクをしています。 その際、テーブルリンクをする為にWindows2000の「ODBC データソース アドミニストレータ」のシステムDSNで、「IBM DB2 ODBC DRIVER」を使用してデータベースAにODBCを介して接続しております。 ですが、サーバーA側と同じ名前の、新サーバーBのデータベースAにODBCを介してテーブルリンクを繋ごうとすると、サーバーAと新サーバーBのデータベースAという名前が同じだからか、システムデータソースを追加しても、新サーバーB側のデータベースAに接続が出来ません。 この場合、新サーバーBのデータベースAの名前を同じものではなく、別の名前に変更した方が宜しいのでしょうか。 質問内容に不足な点がございましたら、内容を再度追加致します。 どうぞご教授宜しくお願いします。

  • リンクテーブルのようなものは?

    ACCESSのリンクテーブルのような機能は、SQL Server 2000にあるのでしょうか? SQL Serverに作成したデータベースAとBがあり、AにあるテーブルをBから参照更新したりすることはできるのでしょうか? 具体的にはどのようなものになるのでしょうか? 初歩的な質問で申し訳ありませんが、何卒、よろしくお願いします。

  • ASPでACCESSからoracleにリンクさせて表示したい。

    はじめまして。 いろいろ調べてみたのですが、わからなかったので質問させてください。 現在、ASPを利用してACCESS(2003)のテーブルから簡単な検索をできるようにしています。 このACCESSのテーブルは、別サーバーで動いているoracle(10g)のデーターベースから EXCELでエクスポートしたものを、ACCESSでインポートして使用していました。 この手間を省くため、ACCESSとoracleをODBCを使用してリンクさせたいと思いました。 まず、ODBCのシステムDSNで「oracle in oraclient10g」で追加して、接続を確認。 その後、ACCESSにてODBCでテーブルをリンクさせて開くことも確認できました。しかし、 WEB上で確認したところ、サーバー側・クライアント側でも以下のエラーが出てしまいます。 Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] ODBC--'****' への接続が失敗しました。 これはどのようにすれば、出来るようになるでしょうか。 初歩的な質問で申し訳ありませんが、ご教授ください。 よろしくお願いします。

  • アクセスにオラクルのテーブルをリンク

    アクセスでオラクルのテーブルを ODBCでリンクしたいのですが そのとき オラクルのユーザー名を 例えば USERNAME で リンクしたいテーブルを TABLE1 として、 リンクすると アクセス 上では  USERNAME_TABLE1 と言う様に ユーザ名 + テーブル名 になってしまいます。 使用したいのは テーブル名だけなので できれば ユーザ名がつかないでリンクしたいのですが、そう言う事はできないのでしょうか?  テーブルの量がたくさんあるので あとから名前を変更するのが大変なんです・・・  

  • Access から SQLserver に接続がエラー。

    ある顧客さんのシステムを改良することになりました。 それはもともと ローカルで、 クライアントが WIN95 or WIN98 or WIN2000 Access97 サーバー側が WIN NT SQLserver(バージョンは不明。5か6くらい?) で、AccessからODBCで接続する形です。 それで、注文の受注や集計などを行う業務用のアプリケーションです。 改良項目は、WEBからの受注機能をつけるのと、 ついでにOSもバージョンアップさせる予定です。 その受注システムにはCTIなどの機能も付いています。 そこで、顧客さんからデータを全て抜き出して解析しています。 私とは別の人と共同で作業をしていて、共同で作業している人がSQLのデータベースのテーブルを抜き出してくれて、 さらにCTI関連の必要OCXなども抜き出してくれました。 ここからが本題ですが、 私のローカルPC(Win2000server)に SQLserver2000(評価版) を入れて Access2000で動作テストをさせようとしているのですが、 なぜかODBCの接続エラーで 「実行時エラー '3151': ODBC--'データベース名' への接続に失敗しました。」 というエラーが出ます。 ODBCの接続はリンクテーブルを作って、 「DSN=DBNAME;UID=sa;PWD=;APP=Microsoft (R) Access;WSID=PC001;LANGUAGE=japanese;DATABASE=DBNAME」 というような接続形式になっているようです。 DSNやDATABASEは指定のデータベース名にしています。 気になるのはWSIDがよくわかりませんけども・・・ ちなみにWEB(PHP4)からは接続できます。 この状況で接続してくれないので困ってしまっています。 以上のことでなにかここが怪しいのではないかといったことがありましたら、アドバイスをいただければと思います。 わかりづらいかも知れませんが、よろしくお願いします。

  • ACCESSのODBCリンクテーブルに接続できなくなる

    ACCESSでSQLserverのテーブルとODBCリンクテーブルで連携したアプリケーションの開発を行っているのですが、ときどきテーブルとのリンクが切れてしまい、「実行時エラーです。リンクするテーブルが見つからないので、クエリを実行できませんでした。」というエラーが発生してしまいます。外的要因以外でACCESSではこのようなことはよく起こりうることなのでしょうか。またこの問題を回避できそうな方法をしている方いらっしゃいましたらよろしくお願いいたします。

  • access ODBCリンクテーブルの作り方

     自分のPCで、あるaccessの業務システムを作成し、それを数人で共有してデータの入力をするようにする為に、ODBCリンクテーブルというものを作る必要があると思っています。  既存で業務的に違う別のシステムがあり、そこでODBCリンクテーブルというものは使用しています。(退職した前担当者が作成。)  ODBCリンクテーブルというものは、どのうようにして作るのですか?  (地球マークのテーブルです。)

  • accessのリンクテーブルマネージャについて

    2人が使用するaccessファイルを、使う人によってリンクテーブルマネージャを、 使い分けることは可能でしょうか。 1、Aさんが使用するときはCのリンクテーブルを参照する。 2、Bさんが使用するときはDのリンクテーブルを参照する。 3、Aさんが使用するときはDのリンクテーブルは参照しないようにする。 4、Bさんが使用するときはCのリンクテーブルは参照しないようにする。 このようなことが可能ならば、設定方法を教えていただけないでしょうか。

  • Access 2000 VBA リンクテーブル

    Access 2000 VBAでシステム開発を行っております。 Oracle 7 と接続してリンクテーブルを作成しています。 通常は問題なく動作するのですが、 Access のフォーム上にボタンを配置して、あるボタンがクリックされたら、 リンクテーブルの参照先を変更して、リンクテーブルを再作成するといったことを 行おうと考えております。 しかし、ソース上でリンクテーブルの参照先を変更しても、 元の参照先でリンクテーブルが作成されてしまい、大変困っております。 どなたか本現象について分かられる方がいらっしゃいましたらご回答のほど 宜しくお願いいたします。 以下がリンクテーブル作成時のソースになります。 Function Create_odbc_table(str_OraTblName As String, str_mdbTblName As String) As Long On Error GoTo Create_odbc_table_Err Create_odbc_table = True Set DBS = CurrentDb DBS.TableDefs.Delete Trim(str_mdbTblName) DBS.TableDefs.Refresh Set tdfA = DBS.CreateTableDef(Trim(str_mdbTblName)) tdfA.Connect = "ODBC;DSN=" & DSN_NAME & ";UID=" & Oracle_UID & ";DBQ= " & Trim(TNS) & ";ASY=OFF;PWD=" & Oracle_PWD & ";TABLE=" & Trim(str_OraTblName) tdfA.SourceTableName = Trim(str_mdbTblName) DBS.TableDefs.Append tdfA DBS.Close end function

  • AccessからOracleDBへのリンク(ODBC経由)

    AccessからOracleDBへのリンクについて教えてください。 以前の質問でも似たような質問があったのですが、少し違うようなので 質問させていただきます。 Oracleクライアント(Net8含む)がインストールされていないPCからODBC経由でOracleDB をリンクさせて参照しようと考えています。 そこで、OracleDBを参照できるように「設定」→「コンパネ」→「ODBCデータソース」 から ”Microsoft ODBC for Oracle” バージョン 2.573.6526.00 データソースを新規に追加しようとすると下記のようなエラーメッセージが表示され怒られてしまいます(--;) **************************** エラー内容 ***************************** Oracle(tm)クライアントとネットワークコンポーネントが見つかりません。これらのコンポーネントは Oracle Corporationから提供され、Oracle Version 7.3(またはそれ以降) のクライアントソフトウェアの一部としてインストールされます。 このドライバを使用するには、これらのコンポーネントを先にインストールしてください。 ****************************************************************** このようなエラーメッセージが出るということは具体的に何が足りないのでしょうか? やはりOracleクライアントのインストールは必須なのでしょうか? 申し訳ないですが宜しくお願い致します。 Access97、Oracle8.1.6