asp + access 数据库为什么修改不了? 10
<%dimconn,connstronerrorresumenextconnstr="DBQ="+server.mappath("pins/data/admin.asp"...
<%
dim conn,connstr
on error resume next
connstr="DBQ="+server.mappath("pins/data/admin.asp")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
Set conn=Server.CreateObject("ADODB.CONNECTION")
conn.open connstr
%>
<%
dim s_sql,s_type,s_title,s_msg,s_prepage
s_type=request("stype")
s_id=request("sid")
'---------------------------------------------------------------------------------
if(s_type="proc") then
dim s_productname,s_producttype,s_productcolor,s_productpinpai,s_productxh,s_productcont
s_productname=request("product_name")
s_producttype=request("product_type")
s_productpinpai=request("product_pinpai")
roj=request("roc")
s_productxh=request("product_xh")
s_productcont=request("product_cont")
s_productcolor=request("product_color")
s_pic=request("xy_content")
s_product_s_type=request("product_s_type")
ok=request("ok")
s_sql="update product_cont set product_name='"+s_productname+"',product_type='"&s_producttype&"',product_pinpai='"+s_productpinpai+"',product_xh='"+s_productxh+"',product_cont='"+s_productcont+"',product_color='"+s_productcolor+"',product_s_type='"+s_product_s_type+"',ok="+ok+" ,product_pic='"+s_pic+"'where id="&s_id
s_msg="alert('产品内容修改成功!');"
s_prepage="window.document.location.href='com_pro.asp?page="&roj&"';"
end if
conn.execute(s_sql)
conn.close
response.write "<script language='javascript'>" & chr(13)
response.write s_msg & Chr(13)
response.write s_prepage &Chr(13)
response.write "</script>" & Chr(13)
Response.End
%> 展开
dim conn,connstr
on error resume next
connstr="DBQ="+server.mappath("pins/data/admin.asp")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
Set conn=Server.CreateObject("ADODB.CONNECTION")
conn.open connstr
%>
<%
dim s_sql,s_type,s_title,s_msg,s_prepage
s_type=request("stype")
s_id=request("sid")
'---------------------------------------------------------------------------------
if(s_type="proc") then
dim s_productname,s_producttype,s_productcolor,s_productpinpai,s_productxh,s_productcont
s_productname=request("product_name")
s_producttype=request("product_type")
s_productpinpai=request("product_pinpai")
roj=request("roc")
s_productxh=request("product_xh")
s_productcont=request("product_cont")
s_productcolor=request("product_color")
s_pic=request("xy_content")
s_product_s_type=request("product_s_type")
ok=request("ok")
s_sql="update product_cont set product_name='"+s_productname+"',product_type='"&s_producttype&"',product_pinpai='"+s_productpinpai+"',product_xh='"+s_productxh+"',product_cont='"+s_productcont+"',product_color='"+s_productcolor+"',product_s_type='"+s_product_s_type+"',ok="+ok+" ,product_pic='"+s_pic+"'where id="&s_id
s_msg="alert('产品内容修改成功!');"
s_prepage="window.document.location.href='com_pro.asp?page="&roj&"';"
end if
conn.execute(s_sql)
conn.close
response.write "<script language='javascript'>" & chr(13)
response.write s_msg & Chr(13)
response.write s_prepage &Chr(13)
response.write "</script>" & Chr(13)
Response.End
%> 展开
5个回答
展开全部
数据如果修改不了首先要检查MDB的读取权限够不够
再是看数据表的字段格式是否正确,你录入的字符串有没有超出字段的大小。
然后是从程序入手,看程序有没有UPDATE
你可以把on error resume next这个给去掉再调试程序,这样可以看出是哪里出了问题的!
再是看数据表的字段格式是否正确,你录入的字符串有没有超出字段的大小。
然后是从程序入手,看程序有没有UPDATE
你可以把on error resume next这个给去掉再调试程序,这样可以看出是哪里出了问题的!
追问
Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
[Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询。
/pins/update_typeok.asp,行 27
这是提示的错误信息,整个typeok.asp的第27行代码如下:
conn.execute(s_sql)
conn.close
追答
你的s_sql语句的问题吧
正常你试下conn.execute("select * from table")
看能不能执行,如果不能就是你的数据库链接上的问题,如果OK你就把语句贴出来,肯定是语句的问题了.
再不然就是你用了conn.close,但是在后面你有执行查询语句导致问题
展开全部
大哥!
s_sql="update product_cont set product_name='"+s_productname+"',product_type='"&s_producttype&"',product_pinpai='"+s_productpinpai+"',product_xh='"+s_productxh+"',product_cont='"+s_productcont+"',product_color='"+s_productcolor+"',product_s_type='"+s_product_s_type+"',ok="+ok+" ,product_pic='"+s_pic+"'where id="&s_id
注意语法!!
例子
update hy set sex='男',mm='456' where zh ='lidongyun4 '
还有你表字段结构!如不是数字 就不加单引号!如果是文本的话就要加单引号!
给你改了下 。
s_sql="update product_cont set product_name='"&s_productname&"',product_type='"&s_producttype&"',product_pinpai='"&s_productpinpai&"',product_xh='"&s_productxh&"',product_cont='"&s_productcont&"',product_color='"&s_productcolor&"',product_s_type='"&s_product_s_type&"',ok='"&ok&"',product_pic='"&s_pic&"'where id="&s_id
response.Write s_sql '这句可删除 用于查看你传过来的值是不是传真确了。如果你要看的话把后面的语句全部删了。。 或屏蔽,如果正确了 就还原。把这句删了就行了!
为了得十分帮到低吧
<%
dim conn,connstr
on error resume next
connstr="DBQ="+server.mappath("pins/data/admin.asp")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
Set conn=Server.CreateObject("ADODB.CONNECTION")
conn.open connstr
%>
<%
dim s_sql,s_type,s_title,s_msg,s_prepage
s_type=request("stype")
s_id=request("sid")
'---------------------------------------------------------------------------------
if(s_type="proc") then
dim s_productname,s_producttype,s_productcolor,s_productpinpai,s_productxh,s_productcont
s_productname=request("product_name")
s_producttype=request("product_type")
s_productpinpai=request("product_pinpai")
roj=request("roc")
s_productxh=request("product_xh")
s_productcont=request("product_cont")
s_productcolor=request("product_color")
s_pic=request("xy_content")
s_product_s_type=request("product_s_type")
ok=request("ok")
s_sql="update product_cont set product_name='"&s_productname&"',product_type='"&s_producttype&"',product_pinpai='"&s_productpinpai&"',product_xh='"&s_productxh&"',product_cont='"&s_productcont&"',product_color='"&s_productcolor&"',product_s_type='"&s_product_s_type&"',ok='"&ok&"',product_pic='"&s_pic&"'where id="&s_id
conn.execute(s_sql)
conn.close
response.Write s_sql
%>
打开数据库查询,然后把输出的值直接复制到查询语句里面!运行看看就知道!
s_sql="update product_cont set product_name='"+s_productname+"',product_type='"&s_producttype&"',product_pinpai='"+s_productpinpai+"',product_xh='"+s_productxh+"',product_cont='"+s_productcont+"',product_color='"+s_productcolor+"',product_s_type='"+s_product_s_type+"',ok="+ok+" ,product_pic='"+s_pic+"'where id="&s_id
注意语法!!
例子
update hy set sex='男',mm='456' where zh ='lidongyun4 '
还有你表字段结构!如不是数字 就不加单引号!如果是文本的话就要加单引号!
给你改了下 。
s_sql="update product_cont set product_name='"&s_productname&"',product_type='"&s_producttype&"',product_pinpai='"&s_productpinpai&"',product_xh='"&s_productxh&"',product_cont='"&s_productcont&"',product_color='"&s_productcolor&"',product_s_type='"&s_product_s_type&"',ok='"&ok&"',product_pic='"&s_pic&"'where id="&s_id
response.Write s_sql '这句可删除 用于查看你传过来的值是不是传真确了。如果你要看的话把后面的语句全部删了。。 或屏蔽,如果正确了 就还原。把这句删了就行了!
为了得十分帮到低吧
<%
dim conn,connstr
on error resume next
connstr="DBQ="+server.mappath("pins/data/admin.asp")+";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"
Set conn=Server.CreateObject("ADODB.CONNECTION")
conn.open connstr
%>
<%
dim s_sql,s_type,s_title,s_msg,s_prepage
s_type=request("stype")
s_id=request("sid")
'---------------------------------------------------------------------------------
if(s_type="proc") then
dim s_productname,s_producttype,s_productcolor,s_productpinpai,s_productxh,s_productcont
s_productname=request("product_name")
s_producttype=request("product_type")
s_productpinpai=request("product_pinpai")
roj=request("roc")
s_productxh=request("product_xh")
s_productcont=request("product_cont")
s_productcolor=request("product_color")
s_pic=request("xy_content")
s_product_s_type=request("product_s_type")
ok=request("ok")
s_sql="update product_cont set product_name='"&s_productname&"',product_type='"&s_producttype&"',product_pinpai='"&s_productpinpai&"',product_xh='"&s_productxh&"',product_cont='"&s_productcont&"',product_color='"&s_productcolor&"',product_s_type='"&s_product_s_type&"',ok='"&ok&"',product_pic='"&s_pic&"'where id="&s_id
conn.execute(s_sql)
conn.close
response.Write s_sql
%>
打开数据库查询,然后把输出的值直接复制到查询语句里面!运行看看就知道!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Microsoft OLE DB Provider for ODBC Drivers 错误 '80004005'
[Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询。
/pins/update_typeok.asp,行 27
这是提示的错误信息,整个typeok.asp的第27行代码如下:
conn.execute(s_sql)
conn.close
这个就是文件夹的权限不够啊 。。。。右击站点的文件夹属性。安全,把User这个用户改为完全控制就可以了 。。。这个问题 。。
[Microsoft][ODBC Microsoft Access Driver] 操作必须使用一个可更新的查询。
/pins/update_typeok.asp,行 27
这是提示的错误信息,整个typeok.asp的第27行代码如下:
conn.execute(s_sql)
conn.close
这个就是文件夹的权限不够啊 。。。。右击站点的文件夹属性。安全,把User这个用户改为完全控制就可以了 。。。这个问题 。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
sql没有执行吧,应该是你的条件 if(s_type="proc") then 这个有问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
如果方便的话 把源码包邮件发过来
我肯定能帮你解决
我肯定能帮你解决
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询