萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> asp編程 >> asp寫入記錄

asp寫入記錄

 asp寫入記錄:

學習目的:學會數據庫的基本操作--寫入記錄

  數據庫的基本操作無非是:查詢記錄,寫入記錄,刪除記錄,修改記錄。

  今天我們先學習寫入記錄。先建立一個表單:(把下面文章保存為5.htm)

<form name="form1" method="post" action="exa5.asp">
name <input type="text" name="name"><br>
tel <input type="text" name="tel"><br>
message <input type="text" name="message" value=""><br>
<input type="submit" name="Submit" value="提交">
<input type="reset" name="Submit2" value="重置">
</form>

  表單提交到exa5.asp,下面是exa5.asp的代碼: (把下面代碼保存為5.asp)

<%
set conn=server.createobject("adodb.connection")
conn.open "driver={microsoft access driver (*.mdb)};dbq="&server.mappath("data/guestbook.mdb")
name=request.form("name")
tel=request.form("tel")
message=request.form("message") 
exec="insert into guest(name,tel,message)values('"+name+"',"+tel+",'"+message+"')"
conn.execute exec
conn.close
set conn=nothing
response.write "記錄添加成功!"
%>

  在這裡前面兩句我不說了,後面三句我也不說了,前面說過exec裡面的是執行的命令,添加記錄的比較繁,大家要仔細看。

  insert into後面加的是表的名字,後面的括號裡面是需要添加的字段,不用添加的或者字段的內容就是默認值的可以省略。注意,這裡的變量一定要和ACCESS裡面的字段名對應,否則就會出錯。values後面加的是傳送過來的變量。exec是一個字符串,"insert into guest(name,tel,message)values('"是第一段,在ASP裡面不能嵌雙引號,所以可以用'代替雙引號,放在雙引號裡面,連接兩個變量用+或者&所以"',"又是一段,中間夾了一個name就是表單傳來的變量,這樣就可以在這個變量外面加兩個'',表示是字符串了,後面的tel是數字型變量所以不需要外面包圍'',大家慢慢分析這句話,如果用表單傳來的數據代替變量名字的話這句話為(假設name="aaa",tel=111,message="bbb"):"insert into guest(name,tel,message)values('aaa',111,'bbb')"。

  接下來的conn.execute 就是執行這個exec命令,最後別忘記把打開的數據庫關閉,把定義的組件設置為空,這樣可以返回資源。

  下面幾條語句用於關閉數據庫的代碼:

rs.close
set rs=nothing
conn.close
set conn=nothing

  記住,次序不可以顛倒! 可以到數據庫裡面去看一看,或者用duqu.asp讀取看看是不是多了記錄阿?下面是我利用上一節的文件讀取數據庫的圖:

asp寫入記錄 三聯

copyright © 萬盛學電腦網 all rights reserved