注意: 用户界面已经在 Dreamweaver CC 和更高版本中做了简化。因此,您可能在 Dreamweaver CC 和更高版本中找不到本文中描述的一些选项。有关详细信息,请参阅此文章。

关于 ASP 数据库连接                  

ASP 应用程序必须通过开放式数据库连接 (ODBC) 驱动程序(或对象链接)和嵌入式数据库 (OLE DB) 提供程序连接到数据库。该驱动程序或提供程序用作解释器,能够使 Web 应用程序与数据库进行通信。下表显示了一些可以与 Microsoft Access、Microsoft SQL Server 和 Oracle 数据库一起使用的驱动程序:

数据库

数据库驱动程序

Microsoft Access

Microsoft Access 驱动程序 (ODBC)

用于 Access 的 Microsoft Jet 提供程序 (OLE DB)

Microsoft SQL Server

Microsoft SQL Server 驱动程序 (ODBC)

Microsoft SQL Server 提供程序 (OLE DB)

Oracle

Microsoft Oracle 驱动程序 (ODBC)

用于 OLE DB 的 Oracle 提供程序

您可以使用数据源名称 (DSN) 或连接字符串连接到数据库。如果您正在通过未安装在 Windows 系统上的 OLE DB 提供程序或 ODBC 驱动程序进行连接,则必须使用连接字符串。

DSN 是单个词的标识符(如 myConnection),它指向数据库并包含连接到该数据库所需的全部信息。您可以在 Windows 中定义 DSN。如果您正在通过安装在 Windows 系统上的 ODBC 驱动程序进行连接,则可以使用 DSN。

连接字符串是手动编码的表达式,它会标识数据库并列出连接到该数据库所需的信息,如下例所示:

Driver={SQL Server};Server=Socrates;Database=AcmeMktg; 
UID=wiley;PWD=roadrunner

注意: 如果您正在通过安装在 Windows 系统上的 ODBC 驱动程序建立连接,也可以使用连接字符串,但使用 DSN 要简单一些。

关于 OLE DB 连接                  

您可以使用 OLE DB 提供程序与数据库进行通信(OLE DB 仅在 Windows NT、2000 或 XP 上可用)。通过创建直接的数据库特定的 OLE DB 连接,可以消除 Web 应用程序和数据库之间的 ODBC 层,从而提高连接的速度。

如果没有为数据库指定 OLE DB 提供程序,ASP 会使用 ODBC 驱动程序的默认 OLE DB 提供程序与 ODBC 驱动程序进行通信,而后者又与数据库进行通信。

对于不同的数据库存在不同的 OLE DB 提供程序。您可以通过下载 Microsoft Data Access Components (MDAC) 2.5 和 2.7 软件包并将其安装在运行 IIS 的 Windows 计算机上来获取用于 Microsoft Access 和 SQL Server 的 OLE DB 提供程序。您可以从 Microsoft 网站(网址为 http://msdn.microsoft.com/data/mdac/downloads/)免费下载 MDAC 软件包。

注意: 安装 MDAC 2.7 之前应确保 MDAC 2.5 已安装。

用于 Oracle 数据库的 OLE DB 提供程序可以从 Oracle 网站下载,网址为 www.oracle.com/technology/software/tech/windows/ole_db/index.html(需要注册)。

在 Dreamweaver 中,可以通过在连接字符串中包含 Provider 参数来创建 OLE DB 连接。例如,下面分别是 Access、SQL Server 和 Oracle 数据库的常用 OLE DB 提供程序的参数:

Provider=Microsoft.Jet.OLEDB.4.0;... 
Provider=SQLOLEDB;... 
Provider=OraOLEDB;...

有关您的 OLE DB 提供程序的参数值,请参阅提供程序供应商提供的文档或咨询您的系统管理员。

关于连接字符串                  

连接字符串包含 Web 应用程序连接到数据库所需的全部信息。Dreamweaver 在页的服务器端脚本中插入该字符串,以便应用程序服务器随后进行处理。

对于 Microsoft Access 和 SQL Server 数据库,连接字符串包含由分号分隔的以下参数:

Provider

指定数据库的 OLE DB 提供程序。例如,下面分别是 Access、SQL Server 和 Oracle 数据库的常用 OLE DB 提供程序的参数:

Provider=Microsoft.Jet.OLEDB.4.0;... 
Provider=SQLOLEDB;... 
Provider=OraOLEDB;...

有关您的 OLE DB 提供程序的参数值,请参阅提供程序供应商提供的文档或咨询您的系统管理员。

如果没有包含“Provider”参数,则将使用 ODBC 的默认 OLE DB 提供程序,而且您必须为数据库指定适当的 ODBC 驱动程序。

Driver

指定在没有为数据库指定 OLE DB 提供程序时所使用的 ODBC 驱动程序。

Server

指定承载 SQL Server 数据库的服务器(如果您的 Web 应用程序在其它服务器上运行)。

数据库

SQL Server 数据库的名称。

DBQ

指向基于文件的数据库(如在 Microsoft Access 中创建的数据库)的路径。该路径是在承载数据库文件的服务器上的路径。

UID

指定用户名。

PWD

指定用户密码。

DSN

数据源名称(如果使用)。根据您在服务器上定义 DSN 的方式,可以省略连接字符串的其它参数。例如,如果在创建 DSN 时定义其它参数,则 DSN=Results 可以作为有效的连接字符串。

对于其它类型的数据库,连接字符串可能不使用上面列出的参数,或者可能对于这些参数有不同的名称或用途。有关详细信息,请参阅数据库供应商提供的文档,或咨询您的系统管理员。

下面是一个连接字符串示例,它将创建与名为 trees.mdb 的 Access 数据库的 ODBC 连接:

Driver={Microsoft Access Driver (*.mdb)}; 
DBQ=C:InetpubwwwrootResearch    rees.mdb

下面是一个连接字符串示例,它将创建与位于 Gojira 服务器上名为 Mothra 的 SQL Server 数据库的 OLE DB 连接:

Provider=SQLOLEDB;Server=Gojira;Database=Mothra;UID=jsmith; 
PWD=orlando8

使用本地 DSN 创建连接                

注意:本节假定您已设置 ASP 应用程序。它还假定您已经在本地计算机(或在对其具有网络或 FTP 访问权的系统)上设置了数据库。

您可以使用数据源名称 (DSN) 在 Web 应用程序和数据库之间建立 ODBC 连接。DSN 是一种名称,它包含使用 ODBC 驱动程序连接到指定数据库所需的全部参数。

由于在 DSN 中只能指定 ODBC 驱动程序,因此如果要使用 OLE DB 提供程序,就必须使用连接字符串。

可以使用本地定义的 DSN 在 Dreamweaver 中创建数据库连接。

    • 在运行 Dreamweaver 的 Windows 计算机上定义一个 DSN。

    • 在 Dreamweaver 中打开任何一个 ASP 页,然后打开“数据库”面板(“窗口”>“数据库”)。

    • 单击该面板上的加号 (+) 按钮,然后从菜单中选择“数据源名称 (DSN)”。

    • 为新连接输入名称,不要使用空格或特殊字符。

    • 选择“使用本地 DSN”选项并从“数据源名称 (DSN)”菜单中选择要使用的 DSN。

      如果要使用本地 DSN 但未定义本地 DSN,请单击“定义”打开 Windows ODBC 数据源管理器。

    • 完成“用户名”和“密码”框。

    • 请单击“高级”并输入架构或目录名称,以限制 Dreamweaver 在设计时所检索的数据库项数。

      注意: 在 Microsoft Access 中不能创建架构或目录。


    • 单击“测试”连接到数据库,然后单击“确定”。如果连接失败,请仔细检查连接字符串或检查 Dreamweaver 用来处理动态页的测试文件夹的设置。

使用远程 DSN 创建连接                

注意:本节假定您已设置 ASP 应用程序。它还假定您已经在本地计算机(或在对其具有网络或 FTP 访问权的系统)上设置了数据库。

注意:Dreamweaver 可以只检索用 Windows ODBC 数据源管理器创建的服务器 DSN。

您可以使用在远程计算机上定义的 DSN 在 Dreamweaver 中创建数据库连接。如果要使用远程 DSN,则必须在运行应用程序服务器(可能是 IIS)的 Windows 计算机上定义该 DSN。

注意:由于在 DSN 中只能指定 ODBC 驱动程序,因此如果要使用 OLE DB 提供程序,就必须使用连接字符串。

    • 在运行应用程序服务器的远程系统上定义一个 DSN。

    • 在 Dreamweaver 中打开任何一个 ASP 页,然后打开“数据库”面板(“窗口”>“数据库”)。

    • 单击该面板上的加号 (+) 按钮,然后从菜单中选择“数据源名称 (DSN)”。

    • 为新连接输入名称,不要使用空格或特殊字符。

    • 选择“使用测试服务器上的 DSN”。

      注意:Macintosh 用户可以忽略此步骤,因为所有数据库连接均使用应用程序服务器上的 DSN。

    • 输入 DSN 或单击“DSN”按钮连接至服务器,选择所需数据库的 DSN,然后完成各个选项。

    • 完成“用户名”和“密码”框。

    • 请单击“高级”并输入架构或目录名称,以限制 Dreamweaver 在设计时所检索的数据库项数。

      注意:在 Microsoft Access 中不能创建架构或目录。

    • 单击“测试”连接到数据库,然后单击“确定”。如果连接失败,请仔细检查连接字符串或检查 Dreamweaver 用来处理动态页的测试文件夹的设置。

使用连接字符串创建连接                  

您可以使用非 DSN 连接在 Web 应用程序和数据库之间创建 ODBC 或 OLE DB 连接。您将使用连接字符串来创建这类连接。

    • 在 Dreamweaver 中打开任何一个 ASP 页,然后打开“数据库”面板(“窗口”>“数据库”)。

    • 单击面板上的加号 (+) 按钮,然后从菜单中选择“自定义连接字符串”,完成各个选项并单击“确定”。

    • 为新连接输入名称,不要使用空格或特殊字符。

    • 输入用于连接到数据库的连接字符串。如果没有在连接字符串中指定 OLE DB 提供程序(即,没有包含 Provider 参数),ASP 将自动使用用于 ODBC 驱动程序的 OLE DB 提供程序。这种情况下,必须为数据库指定适当的 ODBC 驱动程序。

      如果您的站点由 ISP 托管,而您不知道数据库的完整路径,请在连接字符串中使用 ASP 服务器对象的 MapPath 方法。

    • 如果在连接字符串中指定的数据库驱动程序没有与 Dreamweaver 安装在同一台计算机上,请选择“使用测试服务器上的驱动程序”。

      注意:Macintosh 用户可以忽略此步骤,因为所有数据库连接均使用应用程序服务器。

    • 请单击“高级”并输入架构或目录名称,以限制 Dreamweaver 在设计时所检索的数据库项数。

      注意:在 Microsoft Access 中不能创建架构或目录。

    • 单击“测试”连接到数据库,然后单击“确定”。如果连接失败,请仔细检查连接字符串或检查 Dreamweaver 用来处理动态页的测试文件夹的设置。

连接到 ISP 上的数据库                  

如果您是通过商业 Internet 服务提供商 (ISP) 来工作的 ASP 开发人员,则通常不知道您上传的文件(包括数据库文件)的物理路径。

如果您的 ISP 没有为您定义 DSN 或者迟迟没有这样做,则必须找到另外一种方法来创建与数据库文件的连接。一种替代方法是创建与数据库文件的非 DSN 连接,但只有在知道数据库文件在 ISP 服务器上的物理路径时,才能定义这样的连接。

可以使用 ASP 服务器对象上的 MapPath 方法获取数据库文件在服务器上的物理路径。

注意:只有当您的数据库基于文件(如 Microsoft Access 数据库,它将数据存储在 .mdb 文件中)时,本节讨论的方法才适用。

了解物理和虚拟路径                  

使用 Dreamweaver 将文件上传到远程服务器后,这些文件驻留在服务器本地目录树中的某个文件夹中。例如,在运行 Microsoft IIS 的服务器上,主页的路径可能如下所示:

c:Inetpubwwwrootaccountsusersjsmithindex.htm

此路径通常称为文件的物理路径。

但是,用来打开文件的 URL 并不使用物理路径。它使用服务器名称或域名,后接虚拟路径,如下例所示:

www.plutoserve.com/jsmith/index.htm

虚拟路径 /jsmith/index.htm 代替了物理路径 c:Inetpubwwwrootaccountsusersjsmithindex.htm。

用虚拟路径查找文件的物理路径                  

如果您通过 ISP 来工作,则通常不知道您上传的文件的物理路径。ISP 通常会为您提供一个 FTP 主机(可能是主机目录)以及一个登录名和密码。ISP 还指定一个 URL,用于在 Internet 上查看您的网页,如 www.plutoserve.com/jsmith/。

如果您知道该 URL,就可以获取该文件的虚拟路径 ? 即 URL 中服务器名称或域名后的路径。只要知道虚拟路径便可使用 MapPath 方法获取文件在服务器上的物理路径。

MapPath 方法采用虚拟路径为参数,并返回文件的物理路径和文件名。该方法的语法如下:

Server.MapPath("/virtualpath")

假定文件的虚拟路径是 /jsmith/index.htm,那么以下表达式将返回它的物理路径:

Server.MapPath("/jsmith/index.htm")

您可以用 MapPath 方法进行如下试验。

    • 在 Dreamweaver 中打开一个 ASP 页并切换到“代码”视图(“视图”>“代码”)。

    • 在该页的 HTML 代码中输入以下表达式。

      <%Response.Write(stringvariable)%>
    • 使用 MapPath 方法获取 stringvariable 参数的值。

      这里提供了一个示例:

      <% Response.Write(Server.MapPath("/jsmith/index.htm")) %>
    • 切换到“实时”视图(“查看”>““实时”视图”)以查看页面。

      该页显示文件在应用程序服务器上的物理路径,例如:

      c:Inetpubwwwrootaccountsusersjsmithindex.htm

      有关 MapPath 方法的详细信息,请参阅 Microsoft IIS 附带的联机文档。

使用虚拟路径连接到数据库                  

若要将非 DSN 连接字符串写入位于远程服务器上的数据库文件,您必须知道该文件的物理路径。以下是一个用于 Microsoft Access 数据库的典型非 DSN 连接字符串示例:

Driver={Microsoft Access Driver (*.mdb)}; 
DBQ=c:Inetpubwwwrootaccountsusersjsmithdatastatistics.mdb

如果您不知道文件在远程服务器上的物理路径,则可以通过在连接字符串中使用 MapPath 方法来获取该路径。

    • 将数据库文件上传到远程服务器并记下其虚拟路径,例如 /jsmith/data/statistics.mdb。

    • 在 Dreamweaver 中打开任何一个 ASP 页,然后打开“数据库”面板(“窗口”>“数据库”)。

    • 单击面板上的加号 (+) 按钮,然后从菜单中选择“自定义连接字符串”。

    • 为新连接输入名称,不要使用空格或特殊字符。

    • 输入连接字符串并使用 MapPath 方法提供 DBQ 参数。

      假定 Microsoft Access 数据库的虚拟路径为 /jsmith/data/statistics.mdb;如果使用 VBScript 作为脚本撰写语言,连接字符串可表示如下:

      “Driver={Microsoft Access Driver (*.mdb)};DBQ=” & Server.MapPath? 
      ("/jsmith/data/statistics.mdb")

      & 符号用于串联(组合)两个字符串。第一个字符串用引号引起来,第二个字符串是由 Server.MapPath 表达式返回的。当两个字符串组合起来时,将创建以下字符串:

      Driver={Microsoft Access Driver (*.mdb)}; 
      DBQ=C:Inetpubwwwrootaccountsusersjsmithdatastatistics.mdb

      如果使用 JavaScript,表达式将基本相同,只是要使用加号 (+) 而不是 & 号来串联两个字符串:

      “Driver={Microsoft Access Driver (*.mdb)};DBQ=” + Server.MapPath? 
      ("/jsmith/data/statistics.mdb")
    • 选择“使用测试服务器上的驱动程序”,单击“测试”,然后单击“确定”。

      注意: Macintosh 用户可以忽略此步骤,因为所有数据库连接均使用应用程序服务器。

      注意:如果连接失败,请重新检查连接字符串或与您的 ISP 联系,确保远程服务器上已经安装了您在连接字符串中指定的数据库驱动程序。另外还需要检查 ISP 是否具有该驱动程序的最新版本。例如,在 Microsoft Access 2000 中创建的数据库将无法与 Microsoft Access Driver 3.5 一起工作。您需要 Microsoft Access 驱动程序 4.0 或更高版本。

    • 更新现有动态页的数据库连接(在 Dreamweaver 中打开该页,在“绑定”面板或“服务器行为”面板中双击记录集名称,然后从“连接”菜单中选择您刚创建的连接),并将新连接用于您生成的任何新页面。

编辑或删除数据库连接                  

当您创建数据库连接后,Dreamweaver 会将连接信息存储在站点本地根文件夹下的“Connections”子文件夹中的一个包含文件中。您可以手动编辑或删除文件中的连接信息,或者执行以下操作。

编辑连接                

    • 在 Dreamweaver 中打开任何一个 ASP 页,然后打开“数据库”面板(“窗口”>“数据库”)。

    • 右键单击 (Windows) 或按住 Control 并单击 (Macintosh) 该连接,然后从菜单中选择“编辑连接”。

    • 编辑连接信息并单击“确定”。

      Dreamweaver 会更新该包含文件,这将更新该站点中使用此连接的所有页。

删除连接                  

    • 在 Dreamweaver 中打开任何一个 ASP 页,然后打开“数据库”面板(“窗口”>“数据库”)。

    • 右键单击 (Windows) 或按住 Control 并单击 (Macintosh) 该连接,然后从菜单中选择“删除连接”。

    • 在显示的对话框中,确认您要删除该连接。

      注意:若要避免在删除连接后出错,请在“绑定”面板中双击记录集的名称并选择一个新连接,以更新所有使用旧连接的记录集。



,