ASP编程入门进阶(二十):ADO组件之修改数据记录
2023-06-13 09:13:52 时间
再来小总结一下:对数据库的操作无非就是显示记录,插入记录,修改记录,删除记录,查询记录。
并且在有关显示记录的时候还涉及到显示的输出格式、分页程序,那么再结合插入记录,一个简单的新闻系统,文章系统,留言系统,注册登陆系统不成任何问题。
下面就涉及到管理这块,需要对数据库记录进行修改。
首先,要修改哪条
修改,不是笼而统之的,而是要针对某条具体对相应修改。可以形象地说,就是对数据库表中的具体哪一行进行具体的修改。
所以,这时候的记录集就有它特定的某个,当然这个主要还是由SQL语句来决定的。
比如sql="select*fromtablewhereid=1"就表示提取的id编号是1的那行的所有记录,然后只要将该行中需要修改的字段赋以新值然后上传数据库就OK了。
同样的语句sql="select*fromtablewhereid=2"相信你也能明白。
但作为我们在页面中,可不是就这样固定的,有可是选择某连接,或者输入某表单值……跳转到专门的修改页,这样所有的任务全在修改页上了,它所具备的SQL语句应该是适应性强的
比如sql="select*fromtablewhereid="&request.queyrstring("id")
其次,将要修改的对应赋值
很简单,正如插入记录一样,将字段和值对应起来。
rs("cn_name")="cnbruce"
rs("cn_sex")="male"
对应的值当然也可以是某个变量或函数
最后,上传更新数据库
和插入一样进行rs.updata,其实观察下来,插入新记录和更新记录只是多了rs.addnew这行的声明。
1,showit.asp
该文件是前面例中所建立引用的。其主要是显示的作用,那么现在,针对具体的某条记录增加跳转到修改页的超级链接。
<%
Fori=1tors.PageSize"利用fornext循环依次读出当前页的记录
ifrs.EOFthen
ExitFor
endif
response.write("<ahref=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("<ahref=change.asp?id="&rs("cn_id")&">修改</a>")
后面的参数id的值则是动态的,那接着就看chang.asp的能耐了。
2,change.asp
<!--#includefile="conn.asp"-->
<%
id=request.querystring("id")
%>
<%ifrequest.form("submit")="change"then
whattitle=request.form("title")
whoauthor=request.form("author")
whatcontent=request.form("content")
id=request.form("id")
Setrs=Server.CreateObject("ADODB.Recordset")
sql="Select*fromcnarticlewherecn_id="&id
rs.Opensql,conn,3,2
rs("cn_title")=whattitle
rs("cn_author")=whoauthor
rs("cn_content")=whatcontent
rs.update
rs.close
Setrs=Nothing
conn.close
setconn=Nothing
response.redirect("showit.asp")
response.end
%>
<%endif%>
<%
ifid<>""then
Setrs=Server.CreateObject("ADODB.Recordset")
sql="select*fromcnarticlewherecn_id="&id
rs.Opensql,conn,1,1
whattitle=rs("cn_title")
whoauthor=rs("cn_author")
whatcontent=rs("cn_content")
endif
%>
<formaction="change.asp"method="post">
Title:<inputtype="text"name="title"value=<%=whattitle%>><br>
Author:<inputtype="text"name="author"value=<%=whoauthor%>><br>
Content:<br>
<textareaname="content"rows="8"cols="30"><%=whatcontent%></textarea><br>
<inputtype="submit"value="change"name="submit">
<inputtype="reset"value="Reset">
<inputname="id"type="hidden"value="<%=id%>">
</form>
当然所有的检察,安全防护都还没做,BUG多多,自己也来慢慢解决。
另外一类的修改更新
<%ifrequest.form("submit")="change"then
whattitle=request.form("title")
whoauthor=request.form("author")
whatcontent=request.form("content")
id=request.form("id")
sql="updatecnarticlesetcn_title=""&whattitle&"",cn_author=""&whoauthor&"",cn_content=""&whatcontent&""wherecn_id="&id
conn.Execute(sql)
conn.close
setconn=Nothing
response.redirect("showit.asp")
response.end
%>
并且在有关显示记录的时候还涉及到显示的输出格式、分页程序,那么再结合插入记录,一个简单的新闻系统,文章系统,留言系统,注册登陆系统不成任何问题。
下面就涉及到管理这块,需要对数据库记录进行修改。
首先,要修改哪条
修改,不是笼而统之的,而是要针对某条具体对相应修改。可以形象地说,就是对数据库表中的具体哪一行进行具体的修改。
所以,这时候的记录集就有它特定的某个,当然这个主要还是由SQL语句来决定的。
比如sql="select*fromtablewhereid=1"就表示提取的id编号是1的那行的所有记录,然后只要将该行中需要修改的字段赋以新值然后上传数据库就OK了。
同样的语句sql="select*fromtablewhereid=2"相信你也能明白。
但作为我们在页面中,可不是就这样固定的,有可是选择某连接,或者输入某表单值……跳转到专门的修改页,这样所有的任务全在修改页上了,它所具备的SQL语句应该是适应性强的
比如sql="select*fromtablewhereid="&request.queyrstring("id")
其次,将要修改的对应赋值
很简单,正如插入记录一样,将字段和值对应起来。
rs("cn_name")="cnbruce"
rs("cn_sex")="male"
对应的值当然也可以是某个变量或函数
最后,上传更新数据库
和插入一样进行rs.updata,其实观察下来,插入新记录和更新记录只是多了rs.addnew这行的声明。
1,showit.asp
该文件是前面例中所建立引用的。其主要是显示的作用,那么现在,针对具体的某条记录增加跳转到修改页的超级链接。
<%
Fori=1tors.PageSize"利用fornext循环依次读出当前页的记录
ifrs.EOFthen
ExitFor
endif
response.write("<ahref=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("<ahref=change.asp?id="&rs("cn_id")&">修改</a>")
后面的参数id的值则是动态的,那接着就看chang.asp的能耐了。
2,change.asp
<!--#includefile="conn.asp"-->
<%
id=request.querystring("id")
%>
<%ifrequest.form("submit")="change"then
whattitle=request.form("title")
whoauthor=request.form("author")
whatcontent=request.form("content")
id=request.form("id")
Setrs=Server.CreateObject("ADODB.Recordset")
sql="Select*fromcnarticlewherecn_id="&id
rs.Opensql,conn,3,2
rs("cn_title")=whattitle
rs("cn_author")=whoauthor
rs("cn_content")=whatcontent
rs.update
rs.close
Setrs=Nothing
conn.close
setconn=Nothing
response.redirect("showit.asp")
response.end
%>
<%endif%>
<%
ifid<>""then
Setrs=Server.CreateObject("ADODB.Recordset")
sql="select*fromcnarticlewherecn_id="&id
rs.Opensql,conn,1,1
whattitle=rs("cn_title")
whoauthor=rs("cn_author")
whatcontent=rs("cn_content")
endif
%>
<formaction="change.asp"method="post">
Title:<inputtype="text"name="title"value=<%=whattitle%>><br>
Author:<inputtype="text"name="author"value=<%=whoauthor%>><br>
Content:<br>
<textareaname="content"rows="8"cols="30"><%=whatcontent%></textarea><br>
<inputtype="submit"value="change"name="submit">
<inputtype="reset"value="Reset">
<inputname="id"type="hidden"value="<%=id%>">
</form>
当然所有的检察,安全防护都还没做,BUG多多,自己也来慢慢解决。
另外一类的修改更新
<%ifrequest.form("submit")="change"then
whattitle=request.form("title")
whoauthor=request.form("author")
whatcontent=request.form("content")
id=request.form("id")
sql="updatecnarticlesetcn_title=""&whattitle&"",cn_author=""&whoauthor&"",cn_content=""&whatcontent&""wherecn_id="&id
conn.Execute(sql)
conn.close
setconn=Nothing
response.redirect("showit.asp")
response.end
%>
相关文章
- asp构建基于SQL Server和ASP的全新应用(sqlserver 和)
- 教你如何用ASP连接MySQL(asp连接mysql教程)
- 使用ASP连接MySQL数据库,轻松实现功能扩展(asp连mysql数据库)
- MySQL重新梳理ASP源码转换指南(asp源码转mysql)
- ASP与MySQL的联合开发实现轻松跨平台互联网应用(asp和mysql)
- ASP连接MySQL,开发数据库应用变得更容易(asp可以连mysql)
- 用ASP编写MySQL数据库程序简单又高效(asp使用mysql代码)
- ASP调用Oracle数据庫,实现完美编程体验(asp访问oracle)
- asp模板引擎终结者(WEB开发之ASP模式)
- ASP编程入门进阶(二十):ADO组件之插入数据记录
- 如何通过ASP管理NT帐号
- 用asp实现批量删除bak文件
- 在ASP中用组件检测当前网卡地址的代码
- asp.net下出现其中的组件“访问被拒绝”的解决方法
- asp下返回以千分位显示数字格式化的数值
- asp防止垃圾留言代码
- ASP.NET页面按钮单击事件失效的解决方法
- asp.net后台如何动态添加JS文件和css文件的引用