Dreamweaver UltraDev はもうサポートされず、Dreamweaver UltraDev サポートセンターもアクティブに更新されなくなります。 Dreamweaver UltraDev で使用できた機能は、Dreamweaver MX 以降の Dreamweaver で使用可能です。 それに伴い、関連するコンテンツをDreamweaverサポートセンターに移動しています。このテクニカルノートの Dreamweaver バージョンを参照してください:データベース接続文字列でのServer.MapPathの使用(テクニカルノート19065)。
|
|
ASPServerオブジェクトのMapPathメソッドの目的は、クライアントブラウザーで使用される可能性のある論理パス情報を、サーバー上の物理パスに変換することです。ユーザーは、OLEDBやODBC DSNレス接続文字列を使用する際に、このASP機能をよく活用します。
サーバーにリモートマウントされたファイルベースのデータベースがある場合、リテラルデータベース接続文字列を使用するには、そのデータベースへの完全なパスを知る必要があります。しかし、そのようなデータベースにアクセスしたいが、ファイルの物理パスに頼ることができない場合もあります。ファイルの物理パスを見つけるには、Server.MapPathメソッドを使用できます。唯一のパラメーターは、ファイルの仮想パスまたは相対パスです。
渡すパラメーターがフォワードスラッシュまたはバックスラッシュで始まる場合、Server.MapPathは完全な仮想パスにマップする完全な物理パスを求めていると仮定します。パスパラメーターがスラッシュで始まらない場合、Server.MapPathは呼び出し元のASPファイルの場所に関連する物理パスを求めていると仮定します。データベース接続文字列の場合、完全な物理パスが必要です。
UltraDev 4は、データベース接続文字列でServer.MapPathを使用する機能を提供します。以下の例は、このような文字列で使用可能な構文を示しています。
- DSNless (ADO) 接続文字列
- 通常の接続文字列:"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=c:\\inetpub\\wwwroot\\ud\\asp\\UltraDev.mdb"
- MapPath接続文字列:"DRIVER={Microsoft Access Driver (*.mdb)};DBQ=" & Server.MapPath("/ud/asp/UltraDev.mdb") & ";"
- OLEDB接続文字列
- 通常の接続文字列:"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\inetpub\\wwwroot\\ud\\asp\\UltraDev.mdb"
- MapPath接続文字列:"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("/ud/asp/UltraDev.mdb")
アプリケーションサーバーとローカルマシン(Windows)でのドライバーの使用
UltraDevでカスタム接続文字列を定義する場合、アプリケーションサーバーまたはローカルマシンのドライバーを使用するオプションがあります。
注意:このオプションは、UltraDevのMacintoshバージョンでは使用できません。すべての接続でアプリケーションサーバーを使用します。
Windowsバージョンでは、Server.MapPathアプローチを利用する際に「Using Driver on Application Server」を必ず選択する必要があります。
Server ASPオブジェクトを使用する場合、webおよびアプリケーションサーバー経由でのみ呼び出すことができます。これは、Using Driver on Application Serverが選択されている場合に使用される接続方法です。Using Driver on Local Machineを選択すると、ODBC経由でデータベースに直接接続されます。webサーバーとASPアプリケーションサーバーは呼び出されません。
Personal Web Serverを使用する場合など、サーバーがUltraDevと同じマシン上にある場合は、Using Driver on Application Serverを選択することができます。
注意:UltraDev 4では、「Run Time」と「Design Time」接続は存在しなくなりました。Run Time接続でServer.MapPathを使用する必要がある場合、同じ接続文字列をデザイン環境にも適用する必要があります。
次の画像は、Server.MapPathと上記に表示されている接続文字列の例のいずれかを使用して、UltraDevでカスタム接続文字列を定義するために使用されるダイアログボックスを示しています。