有很多朋友碰到用UD连接数据库的问题,下面是UDSKY的东东,对大家很有用!
数据库的连结步骤请参看本站相关的教程。
先来看看UltraDev在创建数据库的连接时都做了什么?(Win2000+IIS5.0+Access2000为例)
当数据库连接建立完毕后,查看UD站点资源管理器,我们会发现站点目录中添加了一个
目录Connections,在该目录中有一个文件,文件的名称是你建立连接是给连接定义的名字,这
个文件就是数据库连接文件。
双击打开。
1.如果你建立的是系统DSN连接方式,最后一行是:
MM_yourname_string="dsn=yourname"
2.如果建立的是ODBC DSNless连接方式,会见到类似如下图的内容。
MM_yourname_string=
"driver={Microsoft Access Driver (*.mdb)};DBQ="&server.mappath("\newtrade.mdb")
这是通过Server.Mappath查找库文件的位置,如果你知道该库文件的绝对地址,可以将& Server.Mappath("\somepath\dbname.mdb") &换成库文件的绝对地址,如:c:\somepath\dbname.mdb
3.如果建立的是OLEDB连接。则相应的部分为:
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\somepath\dbname.mdb;User Id=admin;Password=pass;
'这是绝对路径
在需要连接数据库文件的asp页中会在建立相应程序时自动添加如下图中所示第2行部分,调用该连接文件。
<%@LANGUAGE="VBSCRIPT"%>
--------------------------------------------------------------------------------
对于ASP用户UltraDev提供了以下几种数据库连接方式:
远端服务器 -- 使用DSN
本地机 -- 使用DSN
远端服务器 -- 使用自定义连接字符串
本地机 -- 使用自定义连接字符串
远端服务器--使用Server.Mappath
下面列出的连接字符串是目前ASP Applications中应用比较广泛的一些ADO连接字符串方法;
请注意,在连接对话框中.连接字符串必须写在一行中.UD4是自定义连接字符串文本框,
*****ODBC DSNLess Connections:
MS Access ODBC DSNless connection
Driver={Microsoft Access Driver (*.mdb)};Dbq=c:\somepath\dbname.mdb;Uid=Admin;Pwd=pass;
MS SQL Server DSNless connection
Driver={SQL Server};Server=servername;Database=dbname;Uid=sa;Pwd=pass;
******OLE DB Connections:
MS Access OLE DB connection
Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\somepath\dbname.mdb;User Id=admin;Password=pass;
MS SQL Server OLE DB connection
Provider=SQLOLEDB;Data Source=machineName;Initial Catalog=dbname;User ID=sa;Password=pass;
在自定义连接对话框中一定要用双引号把字符串括住)
如果你不知道数据源的绝对地址.你可以从以下地址下载
www.basic-ultradev.com/extensions/getdatabasepath.mxp 一个插件.然后建立一个空白页面,
上传到远端服务器上,然后用ie浏览.就会显示DSNless connection.然后复制粘贴到UD中.
在VBScript使用Server.Mappath的 一种典型DSNLess连接到Access数据源的例子如下:请注意,在自定义对话框中这些字符因该在一行.
"Driver={Microsoft Access Driver (*.mdb)};Dbq=" & Server.Mappath("\somepath\dbname.mdb") & ";Uid=Admin;Pwd=pass;"
一种连接MS Access典型 OLEDB连接字符串如下:
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("\somepath\dbname.mdb") & ";User Id=admin;Password=pass;"
--------------------------------------------------------------------------------
在实际应用中,本地机调试数据库建议使用系统DSN方式,方便。上传到远端服务器上,应改为OLEDB方式
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.Mappath("\somepath\dbname.mdb") & ";User Id=admin;Password=pass;" 快捷,这里要注意\somepath\dbname.mdb的路径要正确。数据库连接出现问题,往往就是这里的路径错误导致。