问题补充说明:我在.asp文件中打开aceess数据库的代码如下SetMyConnection=***.createobject("***.connection")***.open “***.mdb”当执行到下列代码时:***.open “***.mdb”出现错误,提示:“未发现数据源名称并且未指定默认驱动程序”,请问如何解决?
解决办法一、
首先,在控制面板-管理工具--数据源中设置ODBC数据源,在设置ODBC数据源时,要添加“系统DSN”,不要添加“州药领按啊讲克支用户DSN”,因为添加“用户DSN”,只能在本机使用,当把程序移植到其它计算机时,程序就无法正常运行。当设置好ODB360问答C数据源后,再运行程序,出现提示:
错误类型:
MicrosoftOLEDBProviderforODBCDrivers(0x80席纸004005)
[Microsoft][ODBCMicrosoftAccessDriver]MicrosoftJet数据库引擎打不开文件'(未知的)'。它已经被别的用户以独占方式打开,或没有查看数据闷烂的权限。
/exc6/Guestbook板井常大滑印双2.asp,第4行
解决办法维仅坏促快树送本生资角是修改C:\Inetpub\wwwroot目录下态月带头施岩权势位分exc6文件夹的访问权限,修改方法是:
1、鼠标右键点击exc6文件夹,选择属性,选择“WEB共享”选项卡,将“不共享文件夹”改为“共享文件夹”,在别名文本框中随便输入任何一个字符串,再点击“编辑属性”按钮,在弹苏波候穿管出的窗口中将“访问权限”下的四个选项框全部打上勾,将应用程序权限下的“执参举报到干位行(包括脚本)”选项选中,然后点击“确定”按钮退出。经过以上处理后统,再运行程序,问题解决,而原来的程序不需要做任何修改。
解决办法二、
首先,在控制面板-管理工具--数据源中设置ODBC数据源,在设置ODBC数据源时,要添加“系统DSN”,不要添加“用户DSN”,因为添加“用户DSN”,只能在本机使用,当把程序移植到其它计算机时叫技剧第空办井菜,程序就无法正常运行。当设置好ODBC数据源后,再运行程序,出现提示:“[Microsoft感镇][ODBC驱动程序管理器]驱动程序的SQLSetConnectAttr失败”,通过在网络上经过一番查询后,有网友提示要把程序修改成下列代码:
dimconnst种弦r,MyConn王革种ection
SetMy告哪乐Connection=***.createobject("***.connection")
'connstr="driver={Microsoftaccessdriver(*.认离宽五mdb)};datasource=***.mdb"
connstr="drive免司证评银类兰r={microsoft.***.oledb.4.0};datasource=***.mdb"
***.openconnstr
程序修改后,再运行程序,问题解决。
在上田欢件比苦测鲜香教川各面程序中,可以把下列代码:
connstr="driver={microsoft.***.oledb.4.0};datasource=***.mdb"
替换成:
connstr="driver={Microsoftaccessdriver(*.mdb)};datasource=***.mdb"
这里的***.mdb就是一开始设置ODBC数据源时,所输入的数据源名。
但奇怪切川击定练两立含烟造的是,经过上面这样处理,问题得到解决,程序能够正常运行后,再把下列程序:
dimconnstr,MyConnection
SetMyConnection=***.createobject("***.connection")
'connstr="driver={Microsoftaccessdriver(*.mdb)};datasource=***.mdb"
connstr="driver={microsoft.***.oledb.4.0};datasource=***.mdb"
***.openconnstr
改回成原来程序:
SetMyConnection=***.createobject("***.connection")
***.open“***.mdb”
程颂消序也能照样正常运行,不蚂樱漏知是什么原因?
出现提示:“[Microsoft][ODBC驱动程序管理器]驱动程序的SQLSetConnectAttr失败”,通常是由于在控制面板-管理工具--数据源中设置ODBC数据源时,先添加了“系统DSN”,然后又添加了“用户DSN”,然后又把“系统DSN”删除,然后再添加“系统DSN”,总之就是由于反复添加和删除“系统DSN”和“用户DSN”后,就会出现“[Microsoft][ODBC驱动程序管理器]驱动程序的SQLSetConnectAttr失败”的提示。解决办法是将“用户DSN”和“系统DSN”都全部删除掉,然后重新启动计算机,再重新添加“系统DSN”,就能解决问题。添加“系统DSN”的方法如下:
打开控制面板-管理工具--数据源窗口,选择“系统DSN”选项卡,点击“添加”,在弹出的窗口中,选择“Microsoftaccessdriver(*.mdb)”,点击“完成”按钮,在弹出的窗口中,在数据源名文本框中,输入与下列代码:
***.open“***.mdb”
或下列代码:
connstr="driver={microsoft.***.oledb.4.0};datasource=***.mdb"
***.openconnstr
中,与“***.mdb”相同的名字,然后点击“选择”按钮,在弹出的窗口中,找到要使用的数据库,然后一直点击“确定”按钮,就可以添加一个数据源。
在建立数据库连接时,最好使用下列代码:
dimconnstr,MyConnection
SetMyConnection=***.createobject("***.connection")
'connstr="driver={Microsoftaccessdriver(*.mdb)};datasource=***.mdb"
connstr="driver={microsoft.***.oledb.4.0};datasource=***.mdb"
***.openconnstr
用上面这个代码建立的数据库连接会更加可靠,不容易出现问题,即使将程序移植到其它计算机上运行也不容易出现什么问题,而不要使用下列代码:
SetMyConnection=***.createobject("***.connection")
***.open“***.mdb”
用上面这个代码建立的数据库连接容易出现问题,如果将程序移植到其它计算机上运行,就容易出现错误,会提示:“未发现数据源名称并且未指定默认驱动程序”等问题。