• 締切済み

ASP(海外)サーバでMDBファイルのパスを設定するには?

brinksterというASPサーバを使用しています。 MS ACCESS Databaseもサポートしているのですが、 PWSのODBCマネージャに相当する部分がありません。 ASPファイルを実行すると、『プログラムで指定したMDBファイルが見つかりません』というエラーが出ます。 Database Managerというページが、あるにはあるのですが、ACCESS DB Passwordや、SQL Queryを書き込むように求められます。SQL Queryとは何ですか?何を書けばよいのでしょうか? ちなみに、実行させたASPファイルは、私の自宅のPWSでは、問題無く動作するのですが…。

みんなの回答

noname#102878
noname#102878
回答No.1

Server.MapPath("hoge.mdb") とすればServer上でhoge.mdbファイルが物理的にどこにあるかがわかりますよ。

参考URL:
http://www.google.co.jp/search?hl=ja&ie=UTF-8&oe=UTF-8&q=ASP+Server+MapPath+MDB&lr=lang_ja
quick-nono
質問者

お礼

temtecomaiさん、こんにちは。 mdbファイルのパスを調べて、 Set Con = Server.CreateObject("ADODB.Connection") Con.Open "\\XXX1\XXX\XXX\XXX.mdb" としたのですが、 [Microsoft][ODBC Driver Manager] データ ソース名が長すぎます。 とエラーがでました。 ODBCマネージャに、MDBファイルのパスを設定するようにするには、どういう記述をすればよいのでしょうか?

quick-nono
質問者

補足

参考URLを見て、ODBC設定の方法を見つけることができました。 PWSで動作したので、例の海外サーバで試しましたが、 Microsoft][ODBC Microsoft Access Driver]General error Unable to open registry key 'Temporary (volatile) Jet DSN for process 0x4fc Thread 0x9ec DBC 0x8e45024 Jet'.というエラーがでてうまくいきませんでした。 他のサーバを見つけたので、同じ物をアップロードしたら、動きました。お騒がせいたしました。

関連するQ&A

  • ASPで,mdbファイルへのinsert文のエラー

    ASPで,guestbook.mdbファイルへ接続,はOK, そしてinsert文で新規レコードを追加しようとすると エラーが出てしまいます。 select文は使えるのですが。 エラーの内容は, エラー タイプ Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] 更新可能なクエリであることが必要です。 /asp_server/toda/guestbook.asp, line 24 です。 dbへの接続方法は, '***** データベース(guestbook.mdb)に接続 ***** Set ObjConn = Server.CreateObject("ADODB.Connection") ObjConn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & _ Server.Mappath("guestbook.mdb") です。 問題は, '***** 名前とメッセージが空白でないときはデータ追加SQLを実行 ***** StrSQL = "insert into T_Message (name, word, entrydate) " & _ "values ('" & name & "','" & word & "',#" & entrydate & "#)" ObjConn.Execute(StrSQL) ここの,ObjConn.Execute(StrSQL)でエラーが起こります。 なぜエラーが出るのでしょうか。原因と対処方法をおしえていただけませんでしょうか? 「更新可能なクエリであることが必要です。」というエラーなので何かの設定の問題でしょうか?

  • mdbを直接開いてもasp側に影響を与えない方法について

    お世話になります。当方、Windows Server 2003 R2 SP1 で IIS6.0 を使用しています。 サーバ側に設置しているmdbファイルをODBCでシステムDSNに登録し、ASPから 接続しております。 メンテナンスなどで直接mdbファイルを開いている時に、ASPのページに アクセスすると以下のエラーメッセージが出て正常表示が出来なくなります。 ======================================================== HTTP 500.100 - 内部サーバー エラー - ASP エラー インターネット インフォメーション サービス -------------------------------------------------------- エラー タイプ Microsoft OLE DB Provider for ODBC Drivers (0x80004005) [Microsoft][ODBC Microsoft Access Driver] '(不明)' は既に使用されているので、使用できませんでした。 ======================================================== mdbファイルを直接開いても、ASP側でもエラー表示されないように するにはどうしたらよいでしょうか? ソースは以下のようにしております。 Set cnn=Server.CreateObject("ADODB.Connection") cnn.open "dummy" cnn.close cnn.open "testdb"  '// ODBCをtestdbにしています。 SQL = "SELECT * FROM M_USER ORDER BY USERID" Set rs1 = cnn.Execute(SQL) よろしくお願いいたします。

  • MDBパスワード設定済みDBへ接続

    MDBパスワード設定済み(排他オープンからの設定)のDBへ接続を試みているのですが、うまく 接続できません。 ご教授ください。 ASP vbscript <ソース> set objCon=ServerCreateObject("ADODB.Connection") cn1 = "Provider=Microsoft.Jet.OLEDB.4.0;" & _ "DataSource=" & Server.path("db.mdb") & ";Jet OLEDB:Database Password=password;" objCon.Open cn1 <エラー> Microsoft JET Database Engine エラー '80040e4d' パスワードが正しくありません。

  • IIS7.0 と ASP を使ってMDBファイルを参照したい

    みなさんこんばんわ。 IIS7.0 と ASP を使ってMDBファイルを参照したいのですが、 エラーが出て、ページを開くことが出来ません。 エラー表示は HTTP500内部サーバーエラー と表示されます。 エラーでとまる部分は以下コードの Point002 と Point003 の間です。 Response.Write "<p>Point001" Set Objconn = Server.CreateObject("ADODB.Connection") Response.Write "<p>Point002" Objconn.open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.Mappath(DB_Pass) Response.Write "<p>Point003" StrSQL="select * from " & Table_Name Set Objrs = Server.CreateObject("ADODB.Recordset") Response.Write "<p>Point004" Objrs.Open StrSQL, ObjConn Response.Write "<p>Point005" ODBC を使う方法もあるようですが今回は ODBC を使わないでMDBファイルを参照したいのです。 よろしくお願いします。 環境 OS→Windows Vista Ultimate Access→Access2000 IIS→IIS7.0 使用言語→VBScript

  • MDB→SQL Server Expressの移行

      お世話になります。 長文失礼します。 現在稼動中の MS ACCESS 2003で作られた業務管理システムがあります。 そのシステムのDB部分のみ SQL Server 2008 Express に移行するという作業を行なっています。 ※データ照会などのレスポンスアップが目的です 現行のシステムは FORM.MDB(インターフェースのみ) → DATABASE.MDB(データのみ) 移行後は FORM.MDB(インターフェースのみ) → SQL Server 2008 Express(データのみ) となります。 まず、DATABASE.MDBにあるテーブルをACCESSの機能である "アップサイジングウィザード"を使用し、SQL Server に移行しました。 次にテーブルのリンク先をDATABASE.MDB から SQL Server に張り替えました。 基本的には上記の処理のみでデータの照会等うまくいっているのですが 大量の件数(約20万件)のデータを照会する画面で結果が表示されるまでの速度が (現行のシステムと比較して)低下したため改善を行なっております。 上記の照会画面では ACCESSのクエリで複数のテーブルを繋げ、集計した結果を表示しています。 このクエリの代わりにSQL Server側でビューとして作成し、それに対してテーブルリンクを張れば 良いのではないかと考え、実行しました。ビューにリンクを張ったクエリ名を仮に"Q_照会"とします。 結果、照会結果を表示するまでの時間はかなり短縮できた(ように見えた)のですが 照会結果をスクロールや、PageUpキーによるページ移動をすると毎回1、2秒後に スクロール後の結果が表示されます。※現行システムではスムーズにスクロールします。 プロファイラで監視してみるとページ移動した時に、"Q_照会"をテーブルキー指定で SELECT している事がわかりました。毎回10レコード取得しています。 この様な記述は私は書いていませんのでACCESS(SQL Server?)が勝手に行なっている 動きだと思われるのですがどこかで設定できるのでしょうか? また今回、ACCESSのクエリをSQL Serverのビューに置き換える方法を取りましたが 別の方法でレスポンスアップが望める方法があればご教授お願い致します。  

  • LAN上のMDBをIIS(ASP)から開く

    DMZであるWEBサーバー(IIS4.0)からLAN上のMDBファイルを操作したいのですが・・・。うまくいきません。 ネットワークドライブでWEBサーバー側に登録して ADODB.Connectionで直接、またはODBC介してでやろうとしましたが駄目でした。 IIS側でODBCの登録自体はうまくいっているのか(?)MDBの最適化はODBCの画面から行えます。 IIS越しでASPからデータベースを開こうとすると [Microsoft][ODBC Microsoft Access Driver] ファイル '(不明)' を開くことができませんでした。ほかのユーザーが排他的に開いているか、データを読み取る権限がありません。 権限の問題なのでしょうか? LAN側のファイルもフォルダもeveryoneフルコントロールに してあります。(怖いけど(笑)) 同様のケースで過去に解決された方、または良い案がある方。ご教授下さい。

  • MDBファイルの配布について

    以下のような条件の場合 配布先にACCESSの実行環境(ランタイム)及び、ライセンスは必要でしょうか? ・ACCESSにてMDBを作成し、そこにテーブルとデータを格納する。 ・MDB上のデータを検索/表示するEXEを、VB.NETで作成する。  (EXEからは、ADO.NETでMDBにアクセスする) ・ACCESSのMDBは、単純にデータの格納の為だけに使用する。  (フォーム、レポート、クエリーなどは一切使用しない) ・配布先には、EXEとMDBを配布する。

  • 異なるmdbファイルにテーブルをSQLでコピー

    SELECT * into table1 from tabel2 のようにして、同じmdbの中でテーブルをコピーすることはできますが、 異なるmdbファイルにテーブルをSQLを使ってコピーすることはできるものですか。 #できないという回答もお待ちします。 #access2000

  • ASP.NETでSQL-SERVERへの接続方法

    最近、ASP.NETの勉強をはじめました。テキストを見ながらサンプルプログラムを作成しているのですが、SQL-SERVERへのDB接続方法がうまくいきません。 Dim conn As String = "data source=????;user id=sa;password=;initial catalog=SampleDb" Try   Dim objConn As New SqlClient.SqlConnection   objConn.ConnectionString() = conn   Dim comm As New SqlClient.SqlCommand(sql, objConn)   objConn.Open() ソース一番上の????の部分に何と記述すればいいかわかりません。テキストには localhost と記述されています。コンパネの「ODBCデータソース」のDSNやサーバ名を記述しても無理でした。 ASP開発で使用していたDB接続 Conn = "PROVIDER=SQLOLEDB;SERVER=サーバ名;DATABASE=YUSODB;UID=sa;PWD=;" を試したりしたのですが、無理でした。 どなたかご教授お願いします。

  • 他のMDBファイルのテーブルをクエリで表示させることは可能ですか?

    他のMDBファイルのテーブルをクエリで表示させることは可能ですか? C:\Documents\test1.mdbのクエリで C:\Documents\test2.mdbのテーブル1のフィールド1を表示されることは可能でしょうか? SQL文を教えてください。 よろしくお願いします。

専門家に質問してみよう