asp连接Access 数据库 insert ,update 操作错误,求助 100 分

qufo 2002-10-12 09:29:29

w2k+IIS5.0

有如下 asp 文件.执行时在有 >>> 的地方出错.

简单出错信息如下:
我用的是 access 2000 数据库,可以使用 select 却不能用 insert ,update ,delete
我可是以 w2k administrator 登录的呀,在 Access 有权限错误吗?怎么改正?

<!-------------- 简单出错信息--->

HTTP 500.100 - 内部服务器错误 - ASP 错误
Internet 信息服务

--------------------------------------------------------------------------------

技术信息(适用于支持人员)

错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
/test.asp, 第 7 行 (注:指有加 >>> 的那一行)


浏览器类型:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.0)

页:
GET /test.asp

<!---- 简单出错信息结束 -->

<!---- 文件原文 test.asp--->
<!--#include file="adovbs.inc"-->
<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=C:/Inetpub/wwwroot/database/eshop.mdb"
Set rs = Server.CreateObject("ADODB.Recordset")
sql="insert into Review (ReviewName,ProductID) values ('ww','9787799203249')"
>>> rs.open sql,conn,3,3
response.write sql
%>

还有一个问题:那个 adovbs.inc 到底要不要包含?
...全文
101 11 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
Uther 2002-10-12
  • 打赏
  • 举报
回复
你可用conn.execute来试试。
================================================================

CSDN 论坛助手 Ver 1.0 B0402提供下载。 改进了很多,功能完备!

★ 浏览帖子速度极快![建议系统使用ie5.5以上]。 ★ 多种帖子实现界面。
★ 保存帖子到本地[html格式]★ 监视您关注帖子的回复更新。
★ 可以直接发贴、回复帖子★ 采用XML接口,可以一次性显示4页帖子,同时支持自定义每次显示帖子数量。可以浏览历史记录!
★ 支持在线检测程序升级情况,可及时获得程序更新的信息。

★★ 签名 ●
可以在您的每个帖子的后面自动加上一个自己设计的签名哟。

Http://www.ChinaOK.net/csdn/csdn.zip
Http://www.ChinaOK.net/csdn/csdn.rar
Http://www.ChinaOK.net/csdn/csdn.exe [自解压]

skyarrow 2002-10-12
  • 打赏
  • 举报
回复
argewu(琴月阳)解释的很好。我喜欢用八只女。:)
argewu 2002-10-12
  • 打赏
  • 举报
回复
你的数据库所在的磁盘是否是NTFS格式的?我估计应该是吧,所以产生了写的权限的问题。解决方法有两个。
1.把数据库放在非NTFS分区的磁盘上面
2.把数据库所在文件夹的everyone的权限设成“完全控制”,至少也要设成是可写,可修改。你通过IE对磁盘操作实际上用的不是Administrator的权限。

实际上把数据库放在网站目录下是很不安全的,任何知道路径的人都可以直接下载数据库,这样你的一些用户名密码就暴露在光天化日之下了,建议放在非网站发布目录下,这样,你的程序可以访问它,但是没有人可以从网站的外面访问它。
BrightEye 2002-10-12
  • 打赏
  • 举报
回复
数据类型没问题?是不是有的字段要求非空,而你给了空值?
如果select可以,检查你的虚拟目录权限,给everyone完全控制权限试试.
denghan 2002-10-12
  • 打赏
  • 举报
回复
建议把DBQ=C:/Inetpub/wwwroot/database/eshop.mdb绝对路径
换为相对路径的形式:DBQ=database/eshop.mdb ,即把数据库文件放在你的主页目录的子目录database下。
另外,你的表中ProductID字段类型是否为数值型?如果是数值型,请把values ('ww','9787799203249') 改为values ('ww',9787799203249)
而且这个9787799203249数值是否太大?
rs.execute(sql)
army9633 2002-10-12
  • 打赏
  • 举报
回复
你用得ADDNEW看看??

Set rs = Server.CreateObject("ADODB.Recordset")
sql="select * from table"
>>> rs.open sql,conn,3,3
rs.addnew
rs("reviewname")="ll"
rs.update
tmouse 2002-10-12
  • 打赏
  • 举报
回复
不错,建议看看数据类型是否符合。还有,最好是用Server.MapPath("eshop.mdb")来建立一个专门的程序连接数据库,要用的时候就include
kelichen 2002-10-12
  • 打赏
  • 举报
回复
建议检查一下ProductID的数据类型,是否为数值或被设为主键,

在你现在所用的这种情况下adovbs.inc 可以不用包含,其实这个文件里面也只是定义一些变量而已,你可以去看看,如果你用到里面的一些变量就包含它,反之就不用了
孟子E章 2002-10-12
  • 打赏
  • 举报
回复
看看是否是只读属性
孟子E章 2002-10-12
  • 打赏
  • 举报
回复
你有修改的权限吗
qufo 2002-10-12
  • 打赏
  • 举报
回复
已解决,
问题是刚玩过 asp.net
重装一下IIS搞定

28,409

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧