欢迎光临
我们一直在努力

ASP编程入门进阶(二十):ADO组件之修改数据记录-ASP教程,ASP应用

建站超值云服务器,限时71元/月

再来小总结一下:对数据库的操作无非就是显示记录,插入记录,修改记录,删除记录,查询记录。

并且在有关显示记录的时候还涉及到显示的输出格式、分页程序,那么再结合插入记录,一个简单的新闻系统,文章系统,留言系统,注册登陆系统不成任何问题。

下面就涉及到管理这块,需要对数据库记录进行修改。

首先,要修改哪条

修改,不是笼而统之的,而是要针对某条具体对相应修改。可以形象地说,就是对数据库表中的具体哪一行进行具体的修改。

所以,这时候的记录集就有它特定的某个,当然这个主要还是由sql语句来决定的。

比如 sql="select * from table where id=1" 就表示提取的id编号是1的那行的所有记录,然后只要将该行中需要修改的字段赋以新值然后上传数据库就ok了。

同样的语句 sql="select * from table where id=2" 相信你也能明白。

但作为我们在页面中,可不是就这样固定的,有可是选择某连接,或者输入某表单值……跳转到专门的修改页,这样所有的任务全在修改页上了,它所具备的sql语句应该是适应性强的

比如 sql="select * from table where id="&request.queyrstring("id")

其次,将要修改的对应赋值

很简单,正如插入记录一样,将字段和值对应起来。

rs("cn_name")="cnbruce"

rs("cn_sex")="male"

对应的值当然也可以是某个变量或函数

最后,上传更新数据库

和插入一样进行rs.updata ,其实观察下来,插入新记录和更新记录只是多了rs.addnew这行的声明。

1,showit.asp

该文件是前面例中所建立引用的。其主要是显示的作用,那么现在,针对具体的某条记录增加跳转到修改页的超级链接。

<%

for i = 1 to rs.pagesize 利用for next 循环依次读出当前页的记录

if rs.eof then

exit for

end if

response.write("<a href=change.asp?id="& rs("cn_id") &">修改</a>")

response.write("文章标题是:"& rs("cn_title"))

response.write("<br>文章作者是:"& rs("cn_author"))

response.write("<br>文章加入时间是:"& rs("cn_time"))

response.write("<br>文章内容是:"& rs("cn_content"))

response.write("<hr>")

rs.movenext

next

%>

注意response.write("<a href=change.asp?id="& rs("cn_id") &">修改</a>")

后面的参数id的值则是动态的,那接着就看chang.asp的能耐了。

2,change.asp

<!–#include file="conn.asp" –>

<%

id=request.querystring("id")

%>

<%if request.form("submit")="change" then

whattitle=request.form("title")

whoauthor=request.form("author")

whatcontent=request.form("content")

id=request.form("id")

set rs = server.createobject ("adodb.recordset")

sql = "select * from cnarticle where cn_id="&id

rs.open sql,conn,3,2

rs("cn_title")=whattitle

rs("cn_author")=whoauthor

rs("cn_content")=whatcontent

rs.update

rs.close

set rs = nothing

conn.close

set conn=nothing

response.redirect("showit.asp")

response.end

%>

<%end if%>

<%

if id<>"" then

set rs = server.createobject ("adodb.recordset")

sql="select * from cnarticle where cn_id="&id

rs.open sql,conn,1,1

whattitle=rs("cn_title")

whoauthor=rs("cn_author")

whatcontent=rs("cn_content")

end if

%>

<form action="change.asp" method="post">

title:<input type="text" name="title" value=<%=whattitle%>><br>

author:<input type="text" name="author" value=<%=whoauthor%>><br>

content:<br>

<textarea name="content" rows="8" cols="30"><%=whatcontent%></textarea><br>

<input type="submit" value="change" name="submit">

<input type="reset" value="reset">

<input name="id" type="hidden" value="<%=id%>">

</form>

当然所有的检察,安全防护都还没做,bug多多,自己也来慢慢解决。

另外一类的修改更新

<%if request.form("submit")="change" then

whattitle=request.form("title")

whoauthor=request.form("author")

whatcontent=request.form("content")

id=request.form("id")

sql = "update cnarticle set cn_title="&whattitle&",cn_author="&whoauthor&",cn_content="&whatcontent&" where cn_id="&id

conn.execute(sql)

conn.close

set conn=nothing

response.redirect("showit.asp")

response.end

%>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » ASP编程入门进阶(二十):ADO组件之修改数据记录-ASP教程,ASP应用
分享到: 更多 (0)

相关推荐

  • 暂无文章