學習目的:學會數據庫的基本操作1(寫入記錄)
數據庫的基本操作無非是:查詢記錄,寫入記錄,刪除記錄,修改記錄。今天我們先學習寫入記錄。
先建立一個表單:
<form name=form1 method=post action=example5.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>
表單提交到example5.asp,下面是example5.asp的代碼:
<%
set conn=server.createobject(adodb.connection)
conn.open driver={microsoft access driver (*.mdb)};dbq=&server.mappath(example3.mdb)
name=request.form(name)
tel=request.form(tel)
message=request.form(message)
exec=insert into guestbook(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 guestbook(name,tel,message)values('是第一段,在ASP裡面不能嵌雙引號,所以可以用'代替雙引號,放在雙引號裡面,連接兩個變量用+或者&所以',又是一段,中間夾了一個name就是表單傳來的變量,這樣就可以在這個變量外面加兩個'',表示是字符串了,後面的tel是數字型變量所以不需要外麵包圍'',大家慢慢分析這句話,如果用表單傳來的數據代替變量名字的話這句話為(假設name=aaa,tel=111,message=bbb):insert into guestbook(name ,tel,message)values('aaa',111,'bbb')。
接下來的conn.execute 就是執行這個exec命令,最後別忘記把打開的數據庫關閉,把定義的組件設置為空,這樣可以返回資源。上次的讀取為了簡單,我沒有關閉,大家可以補充上去:
rs.close
set rs=nothing
conn.close
set conn=nothing
記住,次序不可以顛倒!
大家可以到數據庫裡面去看一看,或者用example4.asp讀取看看是不是多了記錄阿?