ASP與ACCESS數據庫建立連接(附源碼)_第1頁
ASP與ACCESS數據庫建立連接(附源碼)_第2頁
ASP與ACCESS數據庫建立連接(附源碼)_第3頁
ASP與ACCESS數據庫建立連接(附源碼)_第4頁
ASP與ACCESS數據庫建立連接(附源碼)_第5頁
已閱讀5頁,還剩2頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、前言:如何通過ASP與數據庫建立連接是一個非常現實的問題,我盡量寫得非常詳細。相信看了這篇文章相信您已經能夠寫出類似的比較簡單和實用的程序了。(一)數據庫的選擇:有許多的數據庫你可以選擇,SQL SERVER、ACCESS(*.mdb)、EXCEL(*.xls)、FOXPRO(*.dbf)甚至普通的文本文件(*.txt)都可以達到存儲數據的功能。那么到底選擇什么數據庫最合適呢?其中SQL SERVER是服務器級的,足以應付每天上萬次的訪問量。對于非服務器級的數據庫建議使用ACCESS97。因為:(1)只要安裝了PWS或IIS4肯定有ACCESS的ODBC驅動,即你的系統肯定支持ACCESS數據

2、庫的存取。(2)ACCESS支持的SQL指令非常齊全。(3)ACCESS ODBC驅動程序的效率非常高。雖然它不是服務器級的數據庫,但是作為中小型企業內部網的數據庫支持還是綽綽有余的。(4)ACCESS97在OFFICE97中就有,非常方便得到和使用。本文就以ACCESS數據庫為準介紹基于WEB的數據庫存取方法。 (二)例子:我們建立一個“客戶”數據庫,需要保存如下的客戶資料:客戶名稱、聯絡人姓名、所在城市、電話號碼。(1)首先建立ACCESS數據庫customer.mdb(今后有用的)。建立如下字段:客戶名稱、聯絡人姓名、所在城市、電話號碼、客戶編號、時間。將表保存為"客戶&quo

3、t;(今后有用的,=>看看圖)。注意:建立字段時多作了2個(客戶編號、時間),因為在今后排序時要用到它們。建議今后做數據庫時最好都加上這2項,不會沒用的。此外,在保存表時ACCESS會詢問是否建立一個住關鍵字,我們不需要它所以不必建立。還有:時間字段的"默認值"設成"now()",即去系統當時的時間。同時將索引項設成"有(允許重復)",含義:WEB上極有可能同時存取數據,所以允許重復,索引設成"有"可以加快排序速度。=>看看圖(2)建立遞交表單add.htm:源代碼如下:例如愛喜千團網(換物網,物物交換

4、網,閑置物品交易網,以物換物)<html><head><title>添加數據庫記錄</title><meta http-equiv="Content-Type" content="text/html; charset=gb2312"></head><body bgcolor="#FFFFFF"><p align="center"><font size="5">添加數據庫記錄</fon

5、t></p><form method="post" action="adddatabase.asp"><div align="center"><table width="46%" border="0"><tr> <td width="28%"> <div align="right">公司名稱: </div></td><td width=&

6、quot;72%"> <input type="text" name="CompanyName"></td></tr><tr> <td width="28%"> <div align="right">聯絡人姓名: </div></td><td width="72%"> <input type="text" name="CName"

7、;></td></tr><tr> <td width="28%"> <div align="right">所在城市: </div></td><td width="72%"> <input type="text" name="City"></td></tr><tr> <td width="28%"> <div a

8、lign="right">電話號碼:</div></td><td width="72%"> <input type="text" name="Tel"></td></tr><tr> <td width="28%"> <div align="right"> </div></td><td width="72%">

9、<input type="submit" name="Submit" value="Submit"><input type="reset" name="reset" value="Reset"></td></tr></table></div></form></body></html>這與普通的HTML沒有任何區別,關鍵部分已經用黃色標記了。遞交方法用POST,遞交后處理

10、的程序是adddatabase.asp(下一步就重點討論它)。還有就是給每一個項目取一個名字(NAME,后面有用)。(三)關鍵部分:建立與數據庫的聯系并將表單中收集到的信息添加到ACCESS數據庫中。ASP代碼放在%和%>之間。 <%CompanyName = Request("CompanyName")CName = Request("CName")City = Request("City")Tel = Request("Tel")以上,首先取得表單中填寫的數據,使用ASP的Request對象非常容易

11、可以實現數據的收集。雙引號中的就是上一步建立的各個項目的名字(NAME)。所以今后為每個項目起名字是個好習慣,盡管有時候并不一定用得到。這樣取得的數據就保存在等號坐側的變量中了。 If CompanyName = "" Or CName = "" Or City = "" Or Tel = "" Then'Response.Write "<html><body><center><font size=5>請將資料填寫完整。</font>&l

12、t;/center></body></html>"Response.Redirect "error.htm"Response.End End If這里是檢測各個項目是否輸入了東西,如果為空則不往下繼續執行,顯示錯誤信息。注意:你可以使用兩種方法。我都列出了。方法一:使用Response.Write方法寫一個出錯頁面,類似于javascripts的document.write寫法,只是ASP使用Response.write罷了。方法二:使用Response.Redirect方法導向出錯頁面error.htm。我在方法一的代碼前加上單引號

13、表示注釋。(ASP中表示注釋用單引號')。 set dbconnection=Server.CREATEOBJECT("ADODB.CONNECTION")DBPath = Server.MapPath("customer.mdb")dbconnection.Open "driver=Microsoft Access Driver (*.mdb);dbq=" & DBPath(1)建立Connection對象:dbconnection,建立一個連接(Connection)是數據庫存取的開始。我們使用ASP的內建對象方法

14、Server.Createobject建立與數據庫的連接。ADODB是ASP的數據庫存取組件,不必擔心只要有ASP就有它了,是內置的。 (2)使用dbconnection.open方法打開數據庫customer.mdb。driver參數語法: driver=Microsoft Access Driver (*.mdb)必須這么寫。告訴系統使用ACCESS ODBC驅動處理。dbq參數用來指定打開的數據庫文件,它必須是完整的路徑。例如"c:inetpubwwwrootcustomercustomer.mdb",我們使用Server.MapPath的方法取得數據庫的完整路徑。

15、Set rs = Server.CreateObject("ADODB.Recordset")建立Recordset對象rs。Connection僅僅是建立了與數據庫間的連接,要存取數據還應該再建立Recordset對象。 rs.Open "客戶", dbconnection, adOpenDynamic, 3打開數據庫中的表"客戶"(客戶是表名)。 語法:rs.open 數據表名或SQL指令,已經建立的Connection對象(這里是dbconnection), 鎖定類型rs.AddNewrs("公司名稱") =

16、 CompanyNamers("聯絡人姓名") = CNamers("所在城市") = Cityrs("電話號碼") = Telrs.Update用AddNew向數據庫請求添加數據。最后用Update寫入。注意:等號右側的變量保存著用Request取得的表單數據。雙引號內的就是數據庫的字段,應該與數據庫的一致啊。否則會出錯的。這樣變量內的數據就寫入了數據庫對應的字段內了。 Response.Write "<html><body><center><font size=5>祝賀,您

17、的數據已經添加進數據庫了!<p>"Response.Write "<a href='viewdatabase.asp'>查看數據</a>"Response.Write "</font></center></body></html>"寫入成功后顯示祝賀信息并建立查看數據庫記錄的連接。 %><html><head><title></title></head><body>&l

18、t;/body></html>(三)顯示/查看數據庫記錄:<% set dbconnection=Server.CREATEOBJECT("ADODB.CONNECTION")DBPath = Server.MapPath("customer.mdb")dbconnection.Open "driver=Microsoft Access Driver (*.mdb);dbq=" & DBPath建立與數據庫的連接,與上同。 SQL="select * from 客戶 Order By 時間 D

19、ESC"SET CustomerList=dbconnection.EXECUTE(SQL)%>建立SQL查詢語句,表示從"客戶"表中查詢所有記錄,Order By 時間 DESC表示"按時間降序排序,"這樣最后添加的信息再最上面顯示。下面一句執行SQL查詢并將結果返回給Recordset對象CustomerList。 <html><body><FONT SIZE="5"><center>數據庫記錄</center></FONT><CENTE

20、R><TABLE BORDER=1><tr> <td>編號</td><td>公司名稱</td><td>聯絡人姓名</td><td>所在城市</td><td>電話號碼</td></tr><% DO WHILE NOT CustomerList.EOF %>檢測記錄是否到了最后一條。EOF表示End of File。 <TR><TD><% =CustomerList("客戶編號") %></TD><TD><% =

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論