国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

ASP編程入門進階(二十):ADO組件之修改數據記錄

2020-07-27 13:18:56
字體:
來源:轉載
供稿:網友
再來小總結一下:對數據庫的操作無非就是顯示記錄,插入記錄,修改記錄,刪除記錄,查詢記錄。

并且在有關顯示記錄的時候還涉及到顯示的輸出格式、分頁程序,那么再結合插入記錄,一個簡單的新聞系統,文章系統,留言系統,注冊登陸系統不成任何問題。

下面就涉及到管理這塊,需要對數據庫記錄進行修改。

首先,要修改哪條

修改,不是籠而統之的,而是要針對某條具體對相應修改。可以形象地說,就是對數據庫表中的具體哪一行進行具體的修改。
所以,這時候的記錄集就有它特定的某個,當然這個主要還是由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
%>
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 桂平市| 封丘县| 额敏县| 普兰县| 湟中县| 平凉市| 宜兰县| 临清市| 广德县| 景泰县| 云梦县| 定日县| 凤翔县| 聂拉木县| 甘谷县| 金寨县| 瓦房店市| 吉木乃县| 九龙城区| 乳山市| 达拉特旗| 普定县| 会昌县| 南和县| 安阳市| 巨野县| 连云港市| 宜都市| 荆州市| 新河县| 个旧市| 措勤县| 昌乐县| 通辽市| 化隆| 南丹县| 富平县| 佛坪县| 黔南| 高清| 乌审旗|