哈市南岗民政局电话:好人帮我看看下面这个代码啊!

来源:百度文库 编辑:高考问答 时间:2024/04/28 02:44:19
asp数据库,用的mdb,简单的
数据能读出来,但是写进去就有问题了
代码如下:
Set conn=Server.CreateObject("ADODB.Connection")
DBPath = Server.MapPath("db1.mdb")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath

sql="INSERT INTO guestbook(name,content) VALUES("
sql=sql & uname & ","
sql=sql & ucontent & ")"
response.write sql
conn.Execute(sql)

返回的sql的值是INSERT INTO guestbook(name,content) VALUES(zc,你好)

但是老出错,说我:
Microsoft VBScript 编译器错误 错误 '800a03f6'

缺少 'End'

/iisHelp/common/500-100.asp,行242

Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e10'

[Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是 2。

搞不懂了

1: sql语句缺少了引号,修改sql字符串生成语句:

sql="INSERT INTO guestbook(name,content) VALUES('"
sql=sql & uname & "','"
sql=sql & ucontent & "')"

应该使返回的sql的值是: INSERT INTO guestbook(name,content) VALUES('zc','你好')

2: 缺少"End",要把所有代码贴出来才看得到,这是另一个错误;

Set conn=Server.CreateObject("ADODB.Connection")
conn.open"provider=microsoft.jet.oledb.4.0;data source="&server.mappath("db1.mdb")

sql="INSERT INTO guestbook(name,content) VALUES("
sql=sql & uname & ","
sql=sql & ucontent & ")"
response.write sql
conn.Execute(sql)

你改成这样试试

if 语句或是select case 等嵌套语句的嵌套有问题;

检查一下吧!

Set conn=Server.CreateObject("ADODB.Connection")
DBPath = Server.MapPath("db1.mdb")
conn.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath

sql="INSERT INTO guestbook (name,content) VALUES ('"&uname&"','"&ucontent&"')"
response.write sql
conn.Execute(sql)

你的 MDB在哪个文件夹!
点击那个文件,然后点鼠标右键
点属性,点安全,将用户的权限 在写入前面打个勾 试试看!

可能是你硬盘写入权限没有设置吧