日期:2009-09-21  浏览次数:20942 次

4)由Foxpro生成的DBC数据库与MDB数据库相似,都是一个数据库包含几个数据表的形式,所以对DBC数据库的存取方法与MDB数据库相似。

Function CreateDbcRecordset( DBC数据库文件名, 数据表名或Select语句 )


Dim conn,Driver,SourceType,DBPath

' 建立Connection 对象
Set conn = Server.CreateObject("ADODB.Connection")
Driver = "Driver={Microsoft Visual FoxPro Driver};"
SourceType = "SourceType=DBC;"
DBPath = "SourceDB=" & Server.MapPath( "DBC数据库文件名" )
' 连接数据库
conn.Open Driver & SourceType & DBPath
Set CreateDbcRecordset = Server.CreateObject("ADODB.Recordset")
' 打开数据表,参数二为Connection对象
CreateDbcRecordset.Open "数据表名或Select语句", conn, 2, 2

End Function

5)将Excel97或Excel2000生成的XLS文件(book)看成一个数据库,其中的每一个工作表(sheet)看成数据库表。

Function CreateExcelRecordset( XLS文件名,Sheet名 )

Dim conn.Driver,DBPath

' 建立Connection对象
Set conn = Server.CreateObject("ADODB.Connection")
Driver = "Driver={Microsoft Excel Driver (*.xls)};"
DBPath = "DBQ=" & Server.MapPath( "XLS文件名" )

' 调用Open 方法打开数据库
conn.Open Driver & DBPath
Set CreateExcelRecordset = Server.CreateObject("ADODB.Recordset")
' 打开Sheet,参数二为Connection对象,因为Excel ODBC驱动程序无法直接用'sheet名来打开sheet,所以请注意以下的select语句
CreateExcelRecordset.Open "Select * From ["&sheet&”$]”, conn, 2, 2

End Function

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数据库。