在学习本教程前,您需要掌握以下内容:
① 创建支持ASP的服务器
教程地址:dispbbs.asp?boardID=20&ID=240544
② 使用Access数据库
教程地址:dispbbs.asp?boardID=20&ID=241948
③ 设置Dreamweaver站点
教程地址:dispbbs.asp?boardID=20&ID=243575
打开Dreamweaver,建立一个ASP(VBScript)站点,把数据库放在网站目录下,这里我是把数据库%flash8=data%.mdb放在网站根目录下的^data#base^目录下。
打开“文件”面板,在站点上点击右键,在弹出的菜单中选择“新建文件”,会在站点目录中新建一个untitled.asp。
我们将文件名改为index.asp。双击打开index.asp(必须要打开站点下的一个文件才能进行创建数据库连接的操作)。
打开“应用程序”面板,在“数据库”面板中可以看到有4个步骤,只有前3个步骤完成了才能进行第4步“创建连接”的操作。在进行下面的操作前请确认前3个步骤的前面都打上了“ √ ”(必须)。
点击该面板上的“+”号,在弹出的菜单中选择“自定义连接字符串”。
在弹出的“自定义连接字符串”窗口中,连接名称填写自定义的名称(为了好的编程习惯,最好名称前加上conn前缀,表明这是一个连接字符串)。在连接字符串中填写:
Driver={Microsoft Access Driver (*.mdb)};DBQ=你的数据库的绝对路径
这里当然就是:
Driver={Microsoft Access Driver (*.mdb)};DBQ=F:\Program\flash8asp\^data#base^\%flash8=data%.mdb
(一定注意Driver和(*.mdb)之间有个空格,不要写错了)
“Dreamweaver应连接”选择“使用此计算机上的驱动程序”。
填写完毕后,点击右边的“测试”按钮,如果操作没有问题的话就会弹出“成功创建连接脚本”的提示窗口。点击“确定”完成连接的创建。
此时回到“应用程序”面板中的“数据库”,可以看到我们创建的数据库连接已经生效,可以在这里查看数据库的结构和相关信息。
在数据表上单击右键,选择“查看数据”,可以查看到该数据表中的详细内容。
在“文件”面板中,我们可以看到DW自动生成了一个Connections的文件夹,其中包含了一个以我们刚才自定的连接名称命名的asp文件,这个就是保存连接字符串的地方。
因为我们在连接中使用了数据库绝对路径,而当我们把程序上传到服务器后,服务器上数据库的绝对路径可能和本地路径不一样,程序会出错。为了避免这种情况,我们要在程序中使用相对路径。双击打开连接文件,切换到源代码视图,找到如下的一行:
在这一行前加一个单引号“’”把这行注释掉,然后在另一行输入如下代码:
MM_conntest_String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&Server.Mappath("/^data#base^/%flash8=data%.mdb")
其中的conntest和数据库地址根据自己的实际情况进行修改。
很多人也许会奇怪,为什么我们不在创建连接时就使用相对路径呢?其实这是有原因的。在Dreamweaver中,检测连接文件时是会连注释一起解释的,在Dreamweaver中做程序时就会使用第一个出现的连接字符串;而在服务器中IIS解释文件时会忽略掉注释,会使用第二个连接字符串。呵呵,明白了吧,这样我们就实现了在Dreamweaver中做程序时使用绝对路径,在服务器上浏览时使用相对路径定位数据库而不用修改代码的目的。
另外,在Server.Mappath("/^data#base^/%flash8=data%.mdb")这段代码中,/放在最前面是指从网站的根目录开始。如果你的网站不在服务器的网站根目录下,则要去掉/,而改以文件的相对位置。比如对于本例的index.asp文件来说,可以使用^data#base^/%flash8=data%.mdb就能定位到数据库了。如果是在上一级目录,则要使用“../”。
好了,数据库连接创建完毕了。
我们来测试一下吧。打开index.asp文件,在“应用程序”面板上选择“绑定”面板,点击“+”选择“记录集(查询)”来创建一个记录集。
在弹出的窗口中填写记录集的名称(同样为了良好的习惯建议在记录前面加上前缀rs),选择建立的数据库连接,再选择相应的数据表。其中的一些其它选项我以后会详细讲解,这里按图中的选择就行了。
选择好了之后,点击右边的“测试”按钮,可以看到我们建立的记录集中包含的所有数据。表示我们建立记录集成功。
“确定”后可以看到在“绑定”面板中看到我们建立的记录集包含的相应字段。在程序中我们只需要将字段拖到页面上就可以插入记录集的数据到页面上了。
这里提一点:记录集是数据库反映在ASP程序中的方式。我们可以通过不同的SQL语句从数据库的一个表或者多个表中查询我们需要的数据组成一个记录集,以满足我们查询数据库中各种数据并应用在ASP程序中的要求。可以说,我们程序中所有查询数据库数据的操作(非更新、删除),都是可以通过记录集来实现的。
PS:本来建立数据库连接是比较简单的内容,本想放在和“建立站点”一起发的,但是后来写出来发现内容还是比较多,又涉及到一些基础,所以还是单独放出来作为一帖。和计划有少许出入。