資料|資料庫 6)SQL Server屬於Server級的資料庫,使用時要求比較嚴格,必須要求輸入使用者名稱及密碼才能使用。
Function CreateSQLServerRecordset(電腦名稱,使用者ID, 使用者密碼,資料庫名稱 資料表或查看錶或Select指令 )
Dim Params, conn
Set CreatSQLServerConnection = Nothing
Set conn = Server.CreateObject("ADODB.Connection")
Params = "Provider=SQLOLEDB.1"
Params = Params & ";Data Source=" & Computer
Params = Params & ";User ID=" & UserID
Params = Params & ";Password=" & Password
Params = Params & ".Initial Catalog="&資料庫名稱
Conn open Paras
Set CreateSQLServerRecordset = Server.CreateObject("ADODB.Recordset")
CreateSQLServerRecordset.Open source, conn, 2, 2
End Function
利用上面的函數就可以開啟常用類型的資料庫,然後利用ADO的Recordset對象的增加記錄、刪除記錄、修改記錄等功能就可以對資料庫進行操作。但是要說明的是,在實際開發中我們發現,如果使用DBF、DBC、Excel資料庫,執行效率沒有MDB資料庫效率高,最好儘可能用MDB類型資料庫。
如果用用DBF、DBC、Excel資料庫,下面幾點要注意:Excel資料庫只能讀取、增加記錄、修改記錄,但不能刪除記錄;DBF、DBC<可以讀取記錄、增加記錄、刪除記錄、修改記錄,但是在增加記錄時,任何一個欄位值都不可為空,由此可看出局限性很大,所以儘可能地用MDB或SQL資料庫。
四、執行個體(存取Excel資料表)
為了更進一步說明這些函數的用法,本文給出一個存取Excel資料表的例子,其它函數的存取方法與此類似。假設有一個如圖2的名為1.xls的Excel檔案, 含有三個工作表一班、二班、三班。下面得用上面的函數存取工作表“一班”的資料。
編寫ASP檔案(檔案名稱為1.asp)存取此Excel中檔案。
此處是asp原始碼:
<%
' 建立Connection對象
Function CreateExcelRecordset(xlsfile,sheet)
Dim rs,conn,Driver,DBPath
Set conn = Server.CreateObject("ADODB.Connection")
Driver = "Driver={Microsoft Excel Driver (*.xls)};"
DBPath = "DBQ=" & Server.MapPath( "xlsfile" )
' 調用Open 方法串連資料庫
conn.Open Driver & DBPath
set CreateExcelRecordset = Server.CreateObject("ADODB.Recordset")
' 開啟Sheet表,參數二'>Connection對象
CreateExcelRecordset.Open "Select * From ["&sheet&"$]",conn, 2, 2
End Function
%>
<HTML>
<BODY bgcolor="#FFFFFF">
<TABLE BORDER=1>
<TR BGCOLOR=#00FFFF>
<%
'本行是關鍵行,對函數的引用
' set rs=CreateExcelRecordset("1.xls","一班")
Part I輸出“表頭名稱”且表頭的背景的顏色為#00FFFF
' For i=0 to rs.Fields.Count-1
Response.Write "<TD>" & rs(i).Name & "</TD>"
Next
%>
</TR>
<%
' Part '>輸出資料表的“內容”
rs.MoveFirst ' 將目前的資料記錄移到第一項
While Not rs.EOF ' 判斷是否過了最後一項
Row = "<TR>"
For i=0 to rs.Fields.Count-1
Row = Row & "<TD>" & rs(i) & "</TD>"
Next
Response.Write Row & "</TR>"
rs.MoveNext ' 移到下一項
Wend
%>
</TABLE></CENTER>
</BODY>
</HTML>
利用IE和PWS(Personal Web Server)後瀏覽結果如圖3:
參考文獻:
[1]DataBase and the World Wide Web Marianne Winslett, University of Illinois
[2]http://www.aspobjects.com