主题:  UD基本功(1)--数据库连接!

I''MAD

职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
#12002/2/8 22:15:25
有很多朋友碰到用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的路径要正确。数据库连接出现问题,往往就是这里的路径错误导致。

编辑历史:[这消息被Hmily编辑过(编辑时间2002-03-01 20:28:20)]


5D公害

职务:普通成员
等级:9
金币:10.3
发贴:36272
注册:2002/1/13 9:52:57
#22002/2/17 13:26:35
嘿嘿嘿



肖和

职务:普通成员
等级:1
金币:10.0
发贴:266
注册:2002/2/2 15:56:44
#32002/2/27 16:16:58
我现在还看不大懂,但我会努力,

班主好。



肖和

职务:普通成员
等级:1
金币:10.0
发贴:266
注册:2002/2/2 15:56:44
#42002/2/27 16:19:34
请问dw4.0是否也可,?



I''MAD

职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
#52002/3/1 20:29:55
不行,DW不能生成动态网页,只有UD才行。再说UD有DW所以的功能,有它可以不用DW了。



mercuryhg

职务:普通成员
等级:1
金币:0.0
发贴:82
注册:2001/5/24 19:02:40
#62002/3/4 12:52:42
UD,在使用时总是觉得有点不便,没有自己动手编程好!



5DJSP技术版主

职务:版主
等级:2
金币:10.0
发贴:436
注册:2002/3/6 15:01:22
#72002/3/6 15:51:39
好文章啊

能不能把MYSQL 的部分详细说明一下那再?

盼复



chenhuizcl

职务:普通成员
等级:1
金币:0.0
发贴:25
注册:2002/1/15 10:48:41
#82002/3/18 11:34:06
你们都是高手,可以自己编程,我们只能用UD了,请教你们用什么ASP编程软件,那种好用,更加可视话



I''MAD

职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
#92002/3/18 17:54:21
没错,我们是非专业人员。



闪亮源码

职务:普通成员
等级:1
金币:0.0
发贴:29
注册:2001/5/22 12:09:57
#102002/3/27 21:43:35
哈哈
及时雨啊!
我也是刚刚接触ud
自己做了个自助连接的小程序
本地调试成功
上传到服务器出错
我怀疑就是数据库连接那个地方出问题了
到udsky发贴得不到回答
反而在这里找到答案
:)



Hjin

职务:普通成员
等级:1
金币:0.0
发贴:2
注册:2002/4/12 20:00:24
#112002/4/12 20:33:05
可否不用ODBC连接啊?



I''MAD

职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
#122002/4/12 22:01:55
当然可以,远端服务器 -- 使用DSN
本地机 -- 使用DSN
远端服务器 -- 使用自定义连接字符串
本地机 -- 使用自定义连接字符串
远端服务器--使用Server.Mappath
下面列出的连接字符串是目前ASP Applications中应用比较广泛的一些ADO连接字符串方法;
请注意,在连接对话框中.连接字符串必须写在一行中.UD4是自定义连接字符串文本框,
详细方法见上。



水中的石子

职务:普通成员
等级:1
金币:0.0
发贴:17
注册:2002/3/9 19:33:53
#132002/4/14 18:50:02
用UD做好的ASP网页,在WIN2000下可以用,而WIN98下却出现数据库连接不上是什么问题?请赐教!



I''MAD

职务:普通成员
等级:8
金币:11.0
发贴:9502
注册:2001/9/16 20:00:53
#142002/4/20 15:43:39
水中的石子在上个帖子中说
引用:
用UD做好的ASP网页,在WIN2000下可以用,而WIN98下却出现数据库连接不上是什么问题?请赐教!

那是因为你在98下没有设置DSN吧。



顺子

职务:普通成员
等级:4
金币:10.0
发贴:1867
注册:2000/10/14 21:55:00
#152002/4/30 8:27:13
您能把连接和读取的详细方法讲一下吗,我是一个初学者,最好把每一步骤都说一下