日期:2014-05-16 浏览次数:20811 次
1、页面输出
问题:你的代码中除了if (rs("姓名"))=yonghuming then 。。。end if里之外,其他没有任何输出。所以,如果条件不满足,页面当然不反应;
解决:在其他位置输出一些提示字符,如
<%
respinse.write("wangqi389的练习-------------><br>")
if (rs("姓名"))=yonghuming then 。。。end if
%>
2、数据库操作
问题:1)没有任何容错判断,造成你不知道数据库是否正确连接。如果没有连上,后续操作不就是无用功吗?呵呵;2)操作之后也应该做判断,看看数据库数据操作时是否有错误;3)记录集交叉操作:open了一个记录集rs,然后在循环里不停的用update方法写库,容易出错;4)即使释放数据库占用的资源,做到即用即开、用后关闭;
解决:
1)加入必要的判断
<%
err.clear
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "....................."
if conn.state<>1 then
response.write("数据库没连上啊~~~~")
//response.write(err.description)//仅在调试代码时使用。以后要注释掉
set conn=nothing//释放资源
response.end()//终止程序运行,避免后续的不正确操作
end if
%>
2)加入必要的判断
<%
if (rs("姓名"))=yonghuming then
'response.Write(jiguan)
'response.Write(rs("籍贯"))
rs("籍贯")=jiguan
err.clear
rs.update()
if err<>0 then
response.write("<script>alert('success!')</script>")
//response.write(err.description)//仅在调试代码时使用。以后要注释掉
else
response.write("<script>alert('failed!')</script>")
end if
%>
3)使用conn的UPDATE语句取代rs.update
<%
if (rs("姓名"))=yonghuming then
err.clear
if len(jiguan)>0 then
conn.execute("UPDATE [geren] SET [籍贯]='"&jiguan&"'")
end if
if err<>0 then
response.write("<script>alert('success!')</script>")
//response.write(err.description)//仅在调试代码时使用。以后要注释掉
else
response.write("<script>alert('failed!')</script>")
end if
end if
%>
4)释放资源
在确认不需要数据库操作的地方:
<%
if rs.state<>0 then rs.close
set rs=nothing
if conn.state<>0 then conn.close
set conn=nothing
%>