用ASP连接数据库的几种方法
用ASP连接数据库的几种方法
用ASP连接DBF、DBC、MDB、Excel、SQL Server型数据库的方法:
一、ASP的对象存取数据库方法
在ASP中,用来存取数据库的对象统称ADO(Active Data Objects),主要含有三种对象:Connection、Recordset 、Command
Connection:负责打开或连接数据
Recordset:负责存取数据表
Command:负责对数据库执行行动查询命令
二、连接各数据库的驱动程序
连接各数据库可以使用驱动程序,也可以使用数据源,不过我建议大家使用驱动程序,因为使用驱动程序非常方便、简单,而使用数据源比较麻烦。
驱动程序适用数据库类型
Microsoft.Jet.OLEDB.4.0 Mdb
Microsoft Access Driver Access
Microsoft dBase Driver Dbase
Microsoft Excel Driver Excel
Microsoft Visual FoxPro Driver Dbc
SQLOLEDB.1 SQL srver7.0
而我们在一般情况下使用Access的数据库比较多,在这里我建议大家连接Access数据库使用下面的方法:
dim conn
set conn = server.createobject("adodb.connection")
conn.open = "provider=microsoft.jet.oledb.4.0;" & "data source = " &
server.mappath("../db/bbs.mdb")
其中../db/bbs.mdb是你的数据库存放的相对路径!如果你的数据库和ASP文件在同一目录下,你只要这样写就可以了:
dim conn
set conn = server.createobject("adodb.connection")
conn.open = "provider=microsoft.jet.oledb.4.0;" & "data source = " & server.map path("bbs.mdb")
有许多初学者在遇到数据库连接时总是会出问题,然而使用上面的驱动程序只要你的数据库路径选对了就不会出问题了
ASP连接数据库的5种方法
第一种 - 这种方法用在ACCESS中最多
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _
& Server.MapPath("aspfree.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn
第二种-这种方法用在SQL SERVER中多
strconn = "Driver={SQL Server};Description=sqldemo;SERVER=127.0.0.1;" _ &"UID=LoginID;Password=;DATABASE=Database_Name"
set conn = server.createobject("adodb.connection")
conn.open strconn
第三种
strconn="Driver={Microsoft Access Driver(*.mdb)};" _
&"DBQ=F:\Inetpub\wwwroot\somedir\db1.mdb;DefaultDir=" _
&"f:\Inetpub\wwwroot\somedir;uid=LoginID;" _
&"pwd=Password;DriverId=25;FIL=MSAccess;"
set conn = server.createobject("adodb.connection")
conn.open strconn
第四种运用系统数据源
The following uses a Data Source Name: Example
set conn = server.createobject("adodb.connection")
conn.open "Example"
第五种运用ODBC数据源,前提是你必须在控制面板的ODBC中设置数据源
set rs = server.createobject("adodb.recordset")
rs.open "tblname", "DSNName", 3, 3 第一种 - 这种方法用在ACCESS中最多
strconn = "DRIVER=Microsoft Access Driver (*.mdb);DBQ=" _
& Server.MapPath("aspfree.mdb")
set conn = server.createobject("adodb.connection")
conn.open strconn
ASP访问数据库的方式有哪些?
在ASP中可以通过三种方式访问数据库:
1、IDC(Internet Database Connector)方式;
2、ADO(ActiveX Data Objects)方式;
3、RDS(Remote Data Service)方式。
这三种访问方式对数据库的访问都是由Internet Information Server完成的。通过Web 浏览器用HTTP协议向IIS(Internet信息服务器)发送请求,IIS执行对数据库的访问,并返回一个HTML格式的文档响应。下面分别说明:
1、IDC(Internet数据库接口
IDC是一个传统的数据库查询工具,用来定义和执行数据库查询的SQL命令,并向浏览器返回一个指定数据格式的页面。使用IDC访问数据库最大的特点是简单,几乎不需要编程就能实现对数据库的访问。
IDC使用两种文件来控制如何访问数据库以及如何创建返回的Web页面:IDC (.idc)文件和HTML扩展(.htx)文件。.idc文件必须包括ODBC数据源(Datasource)、HTML扩展文件的文件名(Template)以及要执行的SQL语句(SQLStatement)。此外还有许多可选字段,可以根据需要选用。
2、ADO(ActiveX数据对象)
ADO访问数据库,更像编写数据库应用程序。它把绝大部分的数据库操作封装在七个对象中,在ASP页面中编程调用这些对象执行相应的数据库操作。
ADO是ASP技术的核心之一,它集中体现了ASP技术丰富而灵活的数据库访问功能。ADO建立了基于Web方式访问数据库的脚本编写模型,不仅支持任何大型数据库的核心功能,而且支持许多数据库所专有的特性。
一般使用ADO访问数据库的ASP脚本程序应该使用Connection对象建立并管理与远程数据库的连接,用Command对象提供灵活的查询,用Recordset对象访问数据库查询所返回的结果。这三者是ADO的最核心的对象。
ASP访问数据库的方式有哪些?
3、RDS(远程数据服务)
RDS在IIS 4.0中,与ADO集成到一起,使用同样的编程模型,提供访问远程数据库的功能。
ADO虽然能够提供非常强大的数据库访问功能,但是它不支持数据远程操作(Data Remoting)。它只能执行查询并返回数据库查询的结果,这种结果是静态的,服务器上的数据库与客户端看到的数据没有活的连接关系。如果用户端需要修改数据库,就必须构造修改数据的SQL语句,并执行相应的查询。而RDS支持数据远程操作。它不仅能执行
查询并返回数据库查询结果,而且可以把服务器端的数据“搬到”用户端修改,并调用一个数据库更新命令,将用户端修改的数据写回数据库,象使用本地数据库一样。
数据库的选择原则是什么?
在实际应用中,数据库的选择原则一般是:
如果业务量少、业务较简单,可选用桌面数据库,如Access之类的数据库,即通常所说的F/S模式;
如果初具规模,业务量较大,建议使用VFP+MS-SQL,即通常所说的C/S模式;
如果是大,业务流量大,数据库访问频繁,这时就应选用INTERDEV+MS-SQL数据库了,即B/S 模式。
微软的数据访问技术有哪些?
大体有以下几类:
一、UDA(UniversalDataAccess)
这是微软提供的通用数据访问策略。包括ADO、OLEDB和ODBC。它不光提供了数据库的访问能力,对于其它的数据存储技术也同样支持,如目录服务、Excel的表格数据和Exchange 服务器数据等。
二、ODBC(OpenDatabaseConnectivity)
这是目前公认的最好的数据访问技术。ODBC结构包含了一个普通的基于SQL的API,它利用对应的驱动程序来开发特定的数据库程序。该技术市场巨大,并且对现在的任何数据库都支持,所以,ODBC仍会在长时期使用。
微软的数据访问技术有哪些?
三、RDO(RemoteDataObjects)
它为ODBC提供了一个COM的封装。其目的是简化ODBC的开发和在VisualBasic和VBA程序中发展ODBC。
四、Jet
Jet是安装在MS Access中的数据库引擎。Jet支持MS Access本身的MDB数据库和ODBC。
五、DAO(DataAccessObjects)
它是另一个基于COM的数据访问API。DAO提供了对Jet和ODBC的封装。
六、ODBCDirectODBCDirect微软后来为DAO添加的对ODBC的直接访问。强于通过Jet对ODBC进行支持。七、OLEDB 这是一种普通和简化的基于COM的数据访问规则和API。OLEDB 被设计成为独立于特殊的数据库后端和底层结构,并且它是微软最新的数据连接方案。OLE DB Providers可以通过OLEDB与任何数据存储建立。
八、ADO(ActiveXDataObjects) ADO为开发者提供了一个更加友好的对OLEDB的封装。
九、RDS(RemoteDataServices)这是一个为建立多用户系统而基于ADO对ADO数据源进行远程访问的技术。RDS过去是ADC(AdvancedDataConnector)。
十、MDAC(MicrosoftDataAccessComponents) MDAC是经过验证的分布式UDA的实现和文件。包括四种不同的技术:ODBC、OLEDB、ADO和RDS。
为什么在Access数据会出现更新失败错误
我的Access数据库在用过一段时间后,用Update语句更新时出现更新失败的错误信息,可Select明明能用啊?
这是Access数据库的通病。在经过大量的删除和增加记录的操作后,就会出现前述的错误,明明一条记录存在, 也可以Select,但在Update时就会出现找不到记录, 更新失败的错
误信息。另外,即使删除记录,数据库的体积也不会减小。
由于Access数据库并没有可以改善数据库的相应语句,一般的处理办法是下载Access数据库,使用Access的“修复和压缩数据库”工具处理一遍,保存后上传并覆盖掉原来的数据库。
如何用ASP显示图片
我想可以通过2种方法解决,就ACCESS97数据库而言,一种方法就是在数据库创建一个字段保存图片,通过ASP程序来直接显示它;另一个方法就是在数据库创建一个普通的文本类型的字段,该字段只保存相应的图片的文件名,将图片放在指定的目录,然后通过ASP 程序显示它。