论坛: 编程破解 标题: SQL语句不熟悉,碰到个错误,大家帮忙啊 复制本贴地址    
作者: wuxiu [wuxiu]    论坛用户   登录
用ACCEES建了个数据库名为:guestbook.mdb,表名为guestbook,分别有4个字段名:name(文本型)、tel(数据型)、message(备注型)、time(时间型)。
用ACCEES编辑该数据库文件:
----------------------------------------------------------------------------------
name tel message time
按时打算 2342134 士大夫 2004-2-23 22:59:28
但是发射点咖 329872 开绿灯杀风景机 2004-2-23 22:59:37
扩大解放饿 349857 立刻搭街坊 2004-2-23 22:59:45
扩大寄生蜂 983987 立刻酱豆腐 2004-2-23 22:59:55
----------------------------------------------------------------------------------


建立一个add.htm,代码:
<form name="form1" method="post" action="example5.asp">
name <input type="text" name="name"><br>
tel <input type="text" name="tel"><br>
message <input type="text" name="message" value=""><br>
<input type="submit" name="Submit" value="提交">
<input type="reset" name="Submit2" value="重置">
</form>
然后呢,建立“example5.asp”准备写入一条记录到数据库:
<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("guestbook.mdb")
name=request.form("name")
tel=request.form("tel")
message=request.form("message")
exec="insert into guestbook(name,tel,message)values('"+name+"',"+tel+",'"+message+"')"
conn.execute exec
conn.close
set conn=nothing
response.write "记录添加成功!"
%>

数据库文件guestbook.mdb和ASP都放在同一目录,每次运行都出错:

错误类型:
Microsoft OLE DB Provider for ODBC Drivers (0x80004005)
[Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询。
/example5.asp, 第 8 行



而第8行代码是:
conn.execute exec


实在是不解,向各位老师请教了!


地主 发表时间: 04-02-24 09:33

回复: 286 [unique]   版主   登录
没有错误,程序没错,我这里运行也一切正常。

另:ASP获得时间可以直接利用函数date,time,now等。

B1层 发表时间: 04-02-24 12:41

回复: xiaoshi [xiaoshi]   论坛用户   登录
请指教:
  1  conn.execute exec 给予解释
  2 ('"+name+"',"+tel+",'"+message+"')
      加号是什么作用
  谢谢

B2层 发表时间: 04-02-24 16:19

回复: 286 [unique]   版主   登录
1 通过ADO运行SQL命令有两种方式,一种是CDatebase建立连接后用CRecordset读取数据,另一种是直接通过CDatebase的Execute执行命令。请参阅ADO方面的知识。
2 +号等价于&, "a"+"b"="a"&"b"="ab"

B3层 发表时间: 04-02-24 17:47

回复: wuxiu [wuxiu]   论坛用户   登录
确实没错,是我的WEB平台有错误,系统XP+IIS5.1+ACCEES2000,换到另一台机器上,2000+IIS5+ACCEES2003就没问题。


[此贴被 悟休(wuxiu) 在 02月24日20时01分 编辑过]

B4层 发表时间: 04-02-24 19:43

论坛: 编程破解

20CN网络安全小组版权所有
Copyright © 2000-2010 20CN Security Group. All Rights Reserved.
论坛程序编写:NetDemon

粤ICP备05087286号