ADO组件之修改数据记录

发表日期:2016/7/19 16:37:50 浏览次数:

首先,要修改哪条

修改,不是笼而统之的,而是要针对某条具体对相应修改。可以形象地说,就是对数据库表中的具体哪一行进行具体的修改。
所以,这时候的记录集就有它特定的某个,当然这个主要还是由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("修改") 
  response.write("文章标题是:"& rs("cn_title"))
  response.write("
文章作者是:"& rs("cn_author"))
  response.write("
文章加入时间是:"& rs("cn_time"))
  response.write("
文章内容是:"& rs("cn_content"))
  response.write("
")
  rs.MoveNext
Next
%>


注意response.write("修改")

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

2,change.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
%>

Title:>

Author:>

Content:

<%=whatcontent%>



">




当然所有的检察,安全防护都还没做,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
%>

移动设备浏览《ADO组件之修改数据记录》请扫描二维码, 欢迎访问更多相关内容

公司座机:0519-85115799 服务热线:13357899835 EMAIL:admin@seo-fox.cn
业务QQ:285700415 公司地址:常州市新北区太湖东路9-2号创意大厦1502
上海股权托管交易中心 企业代码:205675
在我们眼里,一个网站应该是专业的,易于操作的,更重要的是:网站是强大的营销工具,让潜在客户了解你的公司提供的更多产品或服务
我们只做有价值的网站!
0
MAP
2007-2015 © 常州网狐信息技术有限公司