通過ASP與ACCESS數(shù)據(jù)庫建立連接(附源碼)(2)
(三)關(guān)鍵部分:建立與數(shù)據(jù)庫的聯(lián)系并將表單中收集到的信息添加到ACCESS數(shù)據(jù)庫中。
ASP代碼放在〈%和%>之間。
<%
CompanyName = Request("CompanyName")
CName = Request("CName")
City = Request("City")
Tel = Request("Tel")
以上,首先取得表單中填寫的數(shù)據(jù),使用ASP的Request對(duì)象非常容易可以實(shí)現(xiàn)數(shù)據(jù)的收集。雙引號(hào)中的就是上一步建立的各個(gè)項(xiàng)目的名字(NAME)。所以今后為每個(gè)項(xiàng)目起名字是個(gè)好習(xí)慣,盡管有時(shí)候并不一定用得到。這樣取得的數(shù)據(jù)就保存在等號(hào)坐側(cè)的變量中了。
If CompanyName = "" Or CName = "" Or City = "" Or Tel = "" Then
'Response.Write "<html><body><center><font size=5>請(qǐng)將資料填寫完整。</font></center></body></html>"
Response.Redirect "error.htm"
Response.End
End If
這里是檢測(cè)各個(gè)項(xiàng)目是否輸入了東西,如果為空則不往下繼續(xù)執(zhí)行,顯示錯(cuò)誤信息。注意:你可以使用兩種方法。我都列出了。方法一:使用Response.Write方法寫一個(gè)出錯(cuò)頁面,類似于javascripts的document.write寫法,只是ASP使用Response.write罷了。方法二:使用Response.Redirect方法導(dǎo)向出錯(cuò)頁面error.htm。我在方法一的代碼前加上單引號(hào)表示注釋。(ASP中表示注釋用單引號(hào)')。
set dbconnection=Server.CREATEOBJECT("ADODB.CONNECTION")
DBPath = Server.MapPath("customer.mdb")
dbconnection.Open "driver={Microsoft Access Driver (*.mdb)};dbq=" & DBPath
(1)建立Connection對(duì)象:dbconnection,建立一個(gè)連接(Connection)是數(shù)據(jù)庫存取的開始。我們使用ASP的內(nèi)建對(duì)象方法Server.Createobject建立與數(shù)據(jù)庫的連接。ADODB是ASP的數(shù)據(jù)庫存取組件,不必?fù)?dān)心只要有ASP就有它了,是內(nèi)置的。
(2)使用dbconnection.open方法打開數(shù)據(jù)庫customer.mdb。driver參數(shù)語法: driver={Microsoft Access Driver (*.mdb)}必須這么寫。告訴系統(tǒng)使用ACCESS ODBC驅(qū)動(dòng)處理。dbq參數(shù)用來指定打開的數(shù)據(jù)庫文件,它必須是完整的路徑。例如"c:inetpubwwwrootcustomercustomer.mdb",我們使用Server.MapPath的方法取得數(shù)據(jù)庫的完整路徑。
Set rs = Server.CreateObject("ADODB.Recordset")
建立Recordset對(duì)象rs。Connection僅僅是建立了與數(shù)據(jù)庫間的連接,要存取數(shù)據(jù)還應(yīng)該再建立Recordset對(duì)象。
rs.Open "客戶", dbconnection, adOpenDynamic, 3
打開數(shù)據(jù)庫中的表"客戶"(客戶是表名)。 語法:
rs.open 數(shù)據(jù)表名或SQL指令,已經(jīng)建立的Connection對(duì)象(這里是dbconnection), 鎖定類型
rs.AddNew
rs("公司名稱") = CompanyName
rs("聯(lián)絡(luò)人姓名") = CName
rs("所在城市") = City
rs("電話號(hào)碼") = Tel
rs.Update
用AddNew向數(shù)據(jù)庫請(qǐng)求添加數(shù)據(jù)。最后用Update寫入。注意:等號(hào)右側(cè)的變量保存著用Request取得的表單數(shù)據(jù)。雙引號(hào)內(nèi)的就是數(shù)據(jù)庫的字段,應(yīng)該與數(shù)據(jù)庫的一致啊。否則會(huì)出錯(cuò)的。這樣變量?jī)?nèi)的數(shù)據(jù)就寫入了數(shù)據(jù)庫對(duì)應(yīng)的字段內(nèi)了。
Response.Write "<html><body><center><font size=5>祝賀,您的數(shù)據(jù)已經(jīng)添加進(jìn)數(shù)據(jù)庫了!<p>"
Response.Write "<a href='viewdatabase.asp'>查看數(shù)據(jù)</a>"
Response.Write "</font></center></body></html>"
寫入成功后顯示祝賀信息并建立查看數(shù)據(jù)庫記錄的連接。
%>
<html>
<head>
<title></title>
</head>
<body>
</body>
</html>
關(guān)鍵詞:ASP,ACCESS,數(shù)據(jù)庫
閱讀本文后您有什么感想? 已有 人給出評(píng)價(jià)!
- 1
- 1
- 1
- 1
- 1
- 1