关于ACCESS数据库和ASP的问题。急啊!!!

来源:百度知道 编辑:UC知道 时间:2024/05/15 09:27:47
这是个留言板,在本地IIS上测试。写好留言后,点“发送”按钮,浏览器提示如下:
*********************************************
错误类型:
Microsoft JET Database Engine (0x80040E07)
标准表达式中数据类型不匹配。
/liuyan/Write.asp, 第 9 行
*********************************************
write.asp的全部代码如下:
*********************************************
(1)<%
(2)'*****************Write.asp*******************
(3)memo=request("txtMemo")
(4)parent=request("txtParent")
(5)set conn=server.createobject("adodb.connection")
(6)dbpath=server.mappath("MyDatabase.mdb")
(7)conn.open"Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & dbpath
(8)sqlcmd="Insert Into DISCUSS(A_Memo,A_Parent) Values('" & memo & "','" & parent & "')"
(9)conn.Execute SQLcmd
(10)conn.close
(11)Response.Redirect"Show.asp?txtParent=" & parent
(12)%>
*****************************

出错应该是第7行。你换一种连接数据库的方式。
driver={microsoft Access driver (*.mdb)}
jet.COEDB.4.0版本可能你机器上没装。

你按我的试试。我估计是数据库引擎不对。

还有可能就是你设计的字段属性不能为空。。你改成可为空值就行了。
那你试试
response.write memo
response.write parent
看看他们的值是不是空。有可能你没把值读过来。
还有试试在access里设计一下字段可为空。

检查MyDatabase.mdb数据库中的DISCUSS表的A_Memo,A_Parent两个字段的数据类型是否都是文本字段。如果不是改成文本,并且选择允许空字符串,应该就可以了。

把这里表名DISCUSS 换成 [DISCUSS]

可能DISCUSS 是sql 中的保留字

首先请检查你的数据库中的A_Parent字段是不是文本型的
其次,请检查
memo=request("txtMemo")
parent=request("txtParent")
是不是等到了你希望的值