下面是虚机维护中,经常碰到的一些ASP程序中的数据库调用的错误,现收集整理如下:ADODB.Recordset 错误'800a0bb9'
变量或者类型不正确,或者不在可以接受的范围之内,要不就是与其他数据冲突。
产生错误可能原因:
1.这个错误多出现在类似语句处:“rs.Open sql,conn,1,1”,原因是数据库连接conn对象未打开。
――――――――――――――――――――――――――――――――――――
不能打开注册表关键字(8007000e)
Microsoft OLE DB Provider for ODBC Drivers 错误'8007000e'
[Microsoft] [ODBC Microsoft Access Driver]常见错误不能打开注册表关键字'Temporary (volatile) Jet DSN for process 0x11b4 Thread 0x1a4c DBC 0x9d34354 Jet'。
产生错误可能原因:
1.打开数据库时写法不对,标准的ACCESS数据库调用写法:
"driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("db.MDB")
2. 正在上传数据库文件。――――――――――――――――――――――――――――――――――――
参数不足,期待是1 (80040e10)
Microsoft OLE DB Provider for ODBC Drivers 错误'80040e10'
[Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是1。
产生错误可能原因:
1.打开数据的SQL查询语句WHERE后面条件子句有问题,一般是缺少逻辑比较符号或者是字段名不正确。
――――――――――――――――――――――――――――――――――――
一般性网络错误。请检查网络文档(80004005)
Microsoft OLE DB Provider for ODBC Drivers 错误'80004005' [Microsoft][ODBC SQL Server Driver][TCP/IP Sockets]一般性网络错误。请检查网络文档。
产生错误可能原因:
1.数据库连接书写不正确,可能数据库名、服务器名错误。
2.数据库服务器重启中。――――――――――――――――――――――――――――――――――――
不能使用'';文件已在使用中(80004005)
Microsoft JET Database Engine 错误'80004005'
不能使用'';文件已在使用中。
产生错误可能原因:
1.文件可能正被占用:上传、压缩、打包。
2.可能程序代码中形成了嵌套包含,重复包含的数据库调用文件。――――――――――――――――――――――――――――――――――――
不能更新。数据库或对象为只读/操作必须使用一个可更新的查询(80004005)
Microsoft OLE DB Provider for ODBC Drivers 错误'80004005'
[Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询。
Microsoft OLE DB Provider for ODBC Drivers 错误'80004005' [Microsoft][ODBC Microsoft Access Driver] 不能更新。数据库或对象为只读。
产生错误可能原因:
1.数据库文件权限不够。
2.文件占用空间达到磁盘限额上限。――――――――――――――――――――――――――――――――――――
未发现数据源名称并且未指定默认驱动程序(80004005)
Microsoft OLE DB Provider for ODBC Drivers 错误'80004005'
[Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
产生错误可能原因:
1.使用了ODBC连接数据库,服务器上没有配置ODBC数据库,改用OLEDB的标准调用方式:"Driver={SQL Server};Database=dbname;Server=srv;Uid=user;Pwd=pd"可以解决
Provider 错误'80004005' ――――――――――――――――――――――――――――――――――――Microsoft OLE DB Provider for ODBC Drivers 错误'80004005'
未指定的错误
/pcn/conn.asp,行8
产生错误可能原因:
1.从出现错误的页面名称来看,是连接数据库时出现的问题。最大的可能是无法连接数据库,和上面“一般性网络错误。。。”是同性质的问题。这时需要检查数据库服务器是否正常。这类错误一般出现在连接MS SQLServer 数据库上。
ADODB.Recordset 错误'800a0e7d' ――――――――――――――――――――――――――――――――――――ADODB.Recordset 错误'800a0e7d'
连接无法用于执行此操作。在此上下文中它可能已被关闭或无效。
/index.asp,行9
产生错误可能原因:
1.在程序中使用了一个已经关闭或者是还没打开的数据库连接。
Server.CreateObject 失败――――――――――――――――――――――――――――――――――――
服务器对象错误'ASP 0177 : 800401f3'
Server.CreateObject 失败
/xxxxx.asp,行155
无效的ProgID。若要获取关于此消息的更多的信息,请访问Microsoft 联机支持站点: https://www.doczj.com/doc/1711439278.html,/contentredirect.asp 。
产生错误可能原因:
1.该错误多数出现在创建组件时,说明程序使用的组件,服务器不支持,需要注册所用的组件。常见于各种使用了上传组件的ASP页面。
附:一些数据库连接字符串写法
[点击此处收藏本文]
发表于2004年09月01日3:36 PM
jass 发表于2004-10-23 10:51 PM
你好,我有一个asp也出现了ADODB.Recordset 错误'800a0bb9'
错误,你说这个是因为数据库连接conn对象未打开,可我看了看conn.asp文件没有问题,好象数据库连接没有问题呀。你碰到这个问题是怎么怎么解决的呀,能不能说说经验?
fogdragon 发表于2004-11-15 9:36 PM
把你的ASP程序贴一部分上来看看。conn.asp和出错附近的一段代码。
zxh 发表于2005-01-27 11:47 AM
ADODB.Recordset 错误'800a0e7d'
连接无法用于执行此操作。在此上下文中它可能已被关闭或无效。
/default15.asp,行407
fogdragon 发表于2005-03-07 10:20 AM
这个错误常见用了一个前面已经关闭的Recordset或者conn对象,或者是用Recordset的时候忘记打开数据库连接对象Conn。
fish 发表于2005-04-12 10:26 AM
我刚才就解决了“ADODB.Recordset 错误'800a0e7d'
连接无法用于执行此操作。在此上下文中它可能已被关闭或无效”这个问题,主要是提示中的“连接”、“上下文”和“关闭”这三个关键词。肯定在程序的前面就有地方直接或者间接(包括等等)引用了预先声明过的定义数据库连接词conn,修改不同的引用就可以了!
用ASP连接数据库的几种方法 用ASP连接DBF、DBC、MDB、Excel、SQL Server型数据库的方法: 一、ASP的对象存取数据库方法 在ASP中,用来存取数据库的对象统称ADO(Active Data Objects),主要含有三种对象:Connection、Recordset 、Command Connection:负责打开或连接数据 Recordset:负责存取数据表 Command:负责对数据库执行行动查询命令 二、连接各数据库的驱动程序 连接各数据库可以使用驱动程序,也可以使用数据源,不过我建议大家使用驱动程序,因为使用驱动程序非常方便、简单,而使用数据源比较麻烦。 驱动程序适用数据库类型 Microsoft.Jet.OLEDB.4.0 Mdb Microsoft Access Driver Access Microsoft dBase Driver Dbase Microsoft Excel Driver Excel Microsoft Visual FoxPro Driver Dbc SQLOLEDB.1 SQL srver7.0 而我们在一般情况下使用Access的数据库比较多,在这里我建议大家连接Access数据库使用下面的方法: dim conn set conn = server.createobject("adodb.connection") conn.open = "provider=microsoft.jet.oledb.4.0;" & "data source = " & server.mappath("../db/bbs.mdb") 其中../db/bbs.mdb是你的数据库存放的相对路径!如果你的数据库和ASP文件在同一目录下,你只要这样写就可以了:
下面是虚机维护中,经常碰到的一些ASP程序中的数据库调用的错误,现收集整理如下:ADODB.Recordset 错误'800a0bb9' 变量或者类型不正确,或者不在可以接受的范围之内,要不就是与其他数据冲突。 产生错误可能原因: 1.这个错误多出现在类似语句处:“rs.Open sql,conn,1,1”,原因是数据库连接conn对象未打开。 ―――――――――――――――――――――――――――――――――――― 不能打开注册表关键字(8007000e) Microsoft OLE DB Provider for ODBC Drivers 错误'8007000e' [Microsoft] [ODBC Microsoft Access Driver]常见错误不能打开注册表关键字'Temporary (volatile) Jet DSN for process 0x11b4 Thread 0x1a4c DBC 0x9d34354 Jet'。 产生错误可能原因: 1.打开数据库时写法不对,标准的ACCESS数据库调用写法: "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.mappath("db.MDB") 2. 正在上传数据库文件。―――――――――――――――――――――――――――――――――――― 参数不足,期待是1 (80040e10) Microsoft OLE DB Provider for ODBC Drivers 错误'80040e10' [Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是1。 产生错误可能原因: 1.打开数据的SQL查询语句WHERE后面条件子句有问题,一般是缺少逻辑比较符号或者是字段名不正确。 ―――――――――――――――――――――――――――――――――――― 一般性网络错误。请检查网络文档(80004005)
ASP连接Access或SQLServer数据库的终极代码 作者:佚名来源:本站整理发布时间:2010-01-11 10:26:29 搞了这么久的ASP,希望本篇能帮助一些初学者。 <% On Error Resume Next Dim Data_base Data_base = 0 '1为MSSQLServer2000 其它为Access Set Conn=Server.CreateObject("Adodb.Connection")
IF Data_base=1 Then '------------------------------------------------------------------------------------- Dim dbconn,dbip,dbdns,dbname,dbuid,dbpwd dbconn = 1 '链接方式1为OLEDB链接2为驱动链接3为DNS链接dbip = "(local)" '数据库所在的IP地址,如果是本地数据库则为:"(local)" dbdns = "数据源DNS名称" '数据库DNS名 dbname = "MSOW" '数据库名称 dbuid = "sa" '数据库用户名 dbpwd = "********" '数据库密码 '------------------------------------------------------------------------------------- Select CASE dbconn
Case 1 Conn.Open "Provider=SQLOLEDB;User ;Password="&dbpwd&";Initial Catalog="&dbname&";Data Source="&dbip&";" Case 2 Conn.open "DRIVER={SQL Server};SERVER="&dbip&";UID="&dbuid&";PWD="&dbpwd&";DATABASE="&dbname&"" Case 3 Conn.open "DSN="&dbdns&";UID="&dbuid&";PWD="&dbpwd&";DATABASE="&dbname&"" End Select Else '-------------------------------------------------------------------------------------
asp数据库数据生成excel文件:
(一)数据库的选择: 有许多的数据库你可以选择,SQL SERVER、ACCESS(*.mdb)、EXCEL(*.xls)、FOXPRO(*.dbf)甚至普通的文本文件(*.txt)都可以达到存储数据的功能。那么到底选择什么数据库最合适呢?其中SQL SERVER是服务器级的,足以应付每天上万次的访问量。对于非服务器级的数据库建议使用ACCESS97。 因为: (1)只要安装了PWS或IIS4肯定有ACCESS的ODBC驱动,即你的系统肯定支持ACCESS数据库的存取。 (2)ACCESS支持的SQL指令非常齐全。 (3)ACCESS ODBC驱动程序的效率非常高。虽然它不是服务器级的数据库,但是作为中小型企业内部网的数据库支持还是绰绰有余的。 (4)ACCESS97在OFFICE97中就有,非常方便得到和使用。 本文就以ACCESS数据库为准介绍基于WEB的数据库存取方法。 (二)例子:我们建立一个“客户”数据库,需要保存如下的客户资料:客户名称、联络人姓名、所在城市、电话号码。 (1)首先建立ACCESS数据库customer.mdb(今后有用的)。 建立如下字段:客户名称、联络人姓名、所在城市、电话号码、客户编号、时间。将表保存为" 客户"(今后有用的,===>看看图)。注意:建立字段时多作了2个(客户编号、时间),因为在今后排序时要用到它们。建议今后做数据库时最好都加上这2项,不会没用的。此外,在保存表时ACCESS 会询问是否建立一个住关键字,我们不需要它所以不必建立。还有:时间字段的"默认值"设成"now()",即去系统当时的时间。同时将索引项设成"有(允许重复)",含义:WEB上极有可能同时存取数据,所以允许重复,索引设成"有"可以加快排序速度。===>看看图 (2)建立递交表单add.htm: 源代码如下:
添加数据库记录