ASP編程操作Excel(提高版)
來源:互聯網
上載者:User
摘 要 主要介紹用Excel做資料庫並使用ASP編程對其進行操作
關鍵詞 ASP,Excel,編程,資料庫
一、問題的提出
在ASP編程中會遇到很多大大小小的難題,我有一次為一家書店設計網站的時候就遇到了一個這樣的難題。起初使用Access做資料庫,該資料庫主要是為了儲存書店內圖書的資訊,但是當記錄的條目過多時資料庫的體積將會變得很大。在實際的應用中,網站的空間是有限的,很多要建設網站的客戶都沒有自己的主機,網站的空間是向網站空間供應商花錢購買而來的,這就要求在網站空間一定的條件下,盡量減小網站內檔案的體積。於是我選擇了Excel做資料庫。
二、方法與說明
將Excel檔案(例如book.xls)看成一個資料庫,其中的每一個工作表(sheet)看成資料庫表。假設Excel中的第一行為欄位名,所以你定義的範圍中必須要包括第一行的內容。
Excel中的列名(即欄位名)不能夠包含數字。Excel的驅動在遇到這種問題時就會出錯(例如你的列名名為“F1”)。如果你的Excel中某一列同時包含了文本和數位話,那麼Excel的ODBC驅動將不能夠正常處理這一行的資料,你必須要保證該列的資料類型一致。
使用Excel做資料庫在添加資料的時候可以在本地機上使用Microsoft Excel進行編輯。書商們在做圖書資料的時候往往都是從各大出版社下載所需的圖書資訊,這些圖書資訊都有固定的格式,書商把下載的資料通過複製、粘貼等方法大批量的添加到Excel資料庫中。做好資料後將Excel資料庫上傳到網站。這種方法有以下優點:快速、方便和易操作。
訪問資料庫資訊的第一步是和資料庫源建立串連。
使用Excel資料庫的串連方法:
<%
Dim Conn,Driver,DBPath,Rs
Set Conn = Server.CreateObject("ADODB.Connection")
Driver = "Driver={Microsoft Excel Driver (*.xls)};"
DBPath = "DBQ=" & Server.MapPath("book.mdb")
Conn.Open Driver & DBPath
%>
其中Driver = "Driver={Microsoft Excel Driver (*.xls)};"
這一行代碼是關鍵,主要是驅動的選擇問題。我們同使用Access做資料庫的串連方法比較下便知。
<%
Dim Conn,Driver,DBPath,Rs
Set Conn = Server.CreateObject("ADODB.Connection")
Driver = "Driver={Microsoft Access Driver (*.mdb)};"
DBPath = "DBQ=" & Server.MapPath("book.mdb")