ASP第6章连接数据库
- 格式:ppt
- 大小:693.50 KB
- 文档页数:27
ASP连接数据库方法1. ADO (ActiveX Data Objects)ADO (ActiveX Data Objects) 是Microsoft提供的一种应用程序接口 (API),允许通过网络使用数据库,特别是Structured Query Language (SQL),来处理数据。
开发者可以使用ActiveX Data Objects (ADO) 来实现数据库的连接、查询、更新和操作数据。
ADO由Microsoft开发,它是一种非常灵活的方法,可以使用ODBC,OLE DB或者ActiveX Data Objects(ADO)连接数据库。
2.OLEDBOLE DB (Object Linking and Embedding Database) 是一种技术,它能够跨越软件和硬件的众多门槛,使得用户能够访问大量复杂的数据源。
它是一种Microsoft技术,用于描述数据类型和存储提供程序,以及从不同提供程序中提取数据的应用程序接口(API)。
它可以用于将多种类型数据转换为统一的格式,然后提取有用的数据。
它的主要特点是支持面向对象的方法,可以快速查询大型数据库并返回结果。
3. ODBC (Open Database Connectivity)ODBC (Open Database Connectivity) 是一种通用接口,可以让用户从各种不同的数据库中查询数据,而不必学习特定数据库的语法。
它是一种应用程序接口,用于连接到不同的数据库系统,从而实现数据的访问。
它可以将数据从各种不同的数据库引擎(如SQL Server,Oracle,DB2,Access等)转换成统一的格式,然后再连接到相应的数据库,以便实现查询和更新数据的操作。
该技术可以支持所有常见的主流数据库。
ASP连接Access数据库几种常见方法在弹出来的“自定义连接字符串”对话框中,"连接名称"随便写一个。
“连接字符串”就要好好填写了。
当"使用此计算机上的驱动程序"时应用绝对路径:DRIVER={Microsoft Access Driver (*.mdb)};DBQ=d:\newgn\database\cnbruce.mdb否则“使用测试服务器上的驱动程序”采用Mappath转换路径:"Driver={Microsoft Access Driver (*.mdb)};DBQ="& server.mappath("/newgn/database/cnbruce.mdb")注:如果将要上传到网上去的页子就可以直接采用Mappath了点击“测试”,出现成功即爽。
附注:需要更多了解的,可以打开DW的帮助教程。
第一种连接和记录集分开声明<%db="db/darden.mdb"set conn=server.createobject("ADODB.connection")connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("" & db & "")conn.open connstr%><%set rs=server.createobject("adodb.recordset")sql="select * from ebook order by id desc"rs.open sql,conn,3,3rs.addnew............rs.update (rs.delete)rs.closeset rs=nothingconn.closeset conn=nothingresponse.write("<center><a href=viewdatabase.asp>显示文字</a></center>")Response.Redirect "homepage.asp"%>第二种连接和记录集一同声明<%set rs=server.createobject("adodb.recordset")sql="select * from ebook order by id desc"conn = "DBQ=" + server.mappath("book.mdb") + ";DefaultDir=;DRIVER={Microsoft Access Driver (*.mdb)};"rs.open sql,conn,3,3rs.addnew............rs.update (rs.delete)rs.closeset rs=nothingresponse.write("<center><a href=viewdatabase.asp>显示文字</a></center>")%>ASP数据库简单*作教程<1>.数据库连接(用来单独编制连接文件conn.asp)<%Set conn = Server.CreateObject(ADODB.Connection)conn.Open DRIVER={Microsoft Access Driver (*.mdb)}; DBQ= & Server.MapPath(\bbs\db1\user.mdb)%>(用来连接bbs\db1\目录下的user.mdb数据库)<2>显示数据库记录原理:将数据库中的记录一一显示到客户端浏览器,依次读出数据库中的每一条记录如果是从头到尾:用循环并判断指针是否到末使用: not rs.eof如果是从尾到头:用循环并判断指针是否到开始使用:not rs.bof <!--#include file=conn.asp--> (包含conn.asp用来打开bbs\db1\目录下的user.mdb数据库)<%set rs=server.CreateObject(adodb.recordset) (建立recordset 对象)sqlstr=select * from message ---->(message为数据库中的一个数据表,即你要显示的数据所存放的数据表)rs.open sqlstr,conn,1,3 ---->(表示打开数据库的方式)rs.movefirst ---->(将指针移到第一条记录)while not rs.eof ---->(判断指针是否到末尾)response.write(rs(name)) ---->(显示数据表message中的name字段)rs.movenext ---->(将指针移动到下一条记录)wend ---->(循环结束)------------------------------------------------------rs.closeconn.close 这几句是用来关闭数据库set rs=nothingset conn=nothing-------------------------------------------------------%>其中response对象是服务器向客户端浏览器发送的信息<3>增加数据库记录增加数据库记录用到rs.addnew,rs.update两个函数<!--#include file=conn.asp--> (包含conn.asp用来打开bbs\db1\目录下的user.mdb数据库)<%set rs=server.CreateObject(adodb.recordset) (建立recordset 对象)sqlstr=select * from message ---->(message为数据库中的一个数据表,即你要显示的数据所存放的数据表)rs.open sqlstr,conn,1,3 ---->(表示打开数据库的方式)rs.addnew 新增加一条记录rs(name)=xx 将xx的值传给name字段rs.update 刷新数据库------------------------------------------------------rs.closeconn.close 这几句是用来关闭数据库set rs=nothingset conn=nothing-------------------------------------------------------%><4>删除一条记录删除数据库记录主要用到rs.delete,rs.update<!--#include file=conn.asp--> (包含conn.asp用来打开bbs\db1\目录下的user.mdb数据库)<%dim namename=xxset rs=server.CreateObject(adodb.recordset) (建立recordset 对象)sqlstr=select * from message ---->(message为数据库中的一个数据表,即你要显示的数据所存放的数据表)rs.open sqlstr,conn,1,3 ---->(表示打开数据库的方式)-------------------------------------------------------while not rs.eofif rs.(name)=name thenrs.deleters.update 查询数据表中的name字段的值是否等于变量name的值xx,如果符合就执行删除,else 否则继续查询,直到指针到末尾为止rs.movenextemd ifwend------------------------------------------------------------------------------------------------------------rs.closeconn.close 这几句是用来关闭数据库set rs=nothingset conn=nothing-------------------------------------------------------%><5>关于数据库的查询(a) 查询字段为字符型<%dim user,pass,qq,mail,messageuser=request.Form(user)pass=request.Form(pass)qq=request.Form(qq)mail=request.Form(mail)message=request.Form(message)if trim(user)&x=x or trim(pass)&x=x then (检测user值和pass 值是否为空,可以检测到空格)response.write(注册信息不能为空)elseset rs=server.CreateObject(adodb.recordset)sqlstr=select * from user where user='&user&' (查询user数据表中的user字段其中user字段为字符型)rs.open sqlstr,conn,1,3if rs.eof thenrs.addnewrs(user)=userrs(pass)=passrs(qq)=qqrs(mail)=mailrs(message)=messagers.updaters.closeconn.closeset rs=nothingset conn=nothingresponse.write(注册成功)end ifrs.closeconn.closeset rs=nothingset conn=nothingresponse.write(注册重名)%>(b)查询字段为数字型<%dim numnum=request.Form(num)set rs=server.CreateObject(adodb.recordset)sqlstr=select * from message where id=&num (查询message 数据表中id字段的值是否与num相等,其中id为数字型) rs.open sqlstr,conn,1,3if not rs.eof thenrs.deleters.updaters.closeconn.closeset rs=nothingset conn=nothingresponse.write(删除成功)end ifrs.closeconn.closeset rs=nothingset conn=nothingresponse.write(删除失败)。
用ASP连接数据库的几种方法用ASP连接DBF、DBC、MDB、Excel、SQL Server型数据库的方法:一、ASP的对象存取数据库方法在ASP中,用来存取数据库的对象统称ADO(Active Data Objects),主要含有三种对象:Connection、Recordset 、CommandConnection:负责打开或连接数据Recordset:负责存取数据表Command:负责对数据库执行行动查询命令二、连接各数据库的驱动程序连接各数据库可以使用驱动程序,也可以使用数据源,不过我建议大家使用驱动程序,因为使用驱动程序非常方便、简单,而使用数据源比较麻烦。
驱动程序适用数据库类型Microsoft.Jet.OLEDB.4.0 MdbMicrosoft Access Driver AccessMicrosoft dBase Driver DbaseMicrosoft Excel Driver ExcelMicrosoft Visual FoxPro Driver DbcSQLOLEDB.1 SQL srver7.0而我们在一般情况下使用Access的数据库比较多,在这里我建议大家连接Access数据库使用下面的方法:dim connset 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 connset 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: Exampleset 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 strconnASP访问数据库的方式有哪些?在ASP中可以通过三种方式访问数据库:1、IDC(Internet Database Connector)方式;2、ADO(ActiveX Data Objects)方式;3、RDS(Remote Data Service)方式。
第一步:服务器配置篇1,打开电脑,在D盘下建立一文件夹newgn(这个夹子就是你的站点存放点了),并且在里面建几个子文件夹(就好似你网站的子目录)2,回到newgn的根目录,右键选择“共享和安全”(其实是快速地建立虚拟目录)3,出现属性对话框后,选择“Web共享”标签,点选“共享文件夹”,出现共享别名对话框,选择默然设置,确定即可。
4,补充说明。
其实设置Web共享就是设置IIS的虚拟目录。
你可以查看到IIS中默认网站中已经有了newgn(附注:偶的OS是win2003的,其实有关IIS的操作一回事。
如: win2K 里面打开IIS---本地计算机---默认站点)5,以上步骤完成了建站,设虚拟目录,下面就是把Dreamweaver打开了。
第一步就是“编辑站点”了6,选择“编辑站点”,在弹出的属性框中选“高级”标签,从“分类”中先选“本地信息”,右窗口中设置站点名称(随便输入,但自己要清楚其代表的意思,推荐和你站点的根文件名同),本地根文件夹(这时候就指向到我们在步骤1中建的文件夹了)。
7,然后设置远程信息,访问选择“本地/网络”,远端文件夹仍选择我们的站点文件夹d:\newgn\8,再接着“测试服务器”,“服务器模型”暂为ASP Javascript,“访问”本地/网络,“测试服务器文件夹”仍是我们的站点文件夹d:\newgn\,“URL前缀”在http://localhost后面添加“newgn/”,添加的东西就是我们步骤3中设置的虚拟目录9,这时,站点定义基本结束,点击确定。
出现“编辑站点”对话框,“完成”即可。
10,此时DW的站点属性框中就将d:\newgn\内所有内容映射过来,在此需要提醒的是W中建好了站点连接,就可直接在DW中对其对应的文件、文件夹操作,最好不要回到我的电脑d:\newgn\里面去操作。
【能在DW中操作的,尽量不要离开DW的编辑环境】剩下的就是新建一asp页面,具体实现怎样的功能。
Asp 与数据库的连接及其相关1. ASP与Access数据库连接:<% language=VBscript%><%dim conn,mdbfilemdbfile=server.mappath("数据库名称.mdb")set conn=server.createobject("adodb.connection")conn.open "driver={microsoft access driver (*.mdb)};uid=admin;pwd=数据库密码;dbq="&mdbfile %>2. ASP与SQL数据库连接:<% language=VBscript%><%dim connset conn=server.createobject("ADODB.connection")conn.open "PROVIDER=SQLOLEDB;DATA SOURCE=SQL服务器名称或IP地址;UID=适当权限的数据库用户;PWD=对应密码;DATABASE=数据库名称如:Conn.Open "Driver={SQL Server};Server=127.0.0.1;UID=kdlab_owner;PWD=kdlab;DATABASE=kdlab"其中的Driver={SQL Server} 可以换成PROVIDER=SQLOLEDBServer=127.0.0.1 因为数据库服务器和IIS服务器相同,所以执行数据库就是本机。
Webconfig 能否控制期中的连接字符串?不知道。
(xyy)建立记录集对象:set rs=server.createobject("adodb.recordset")rs.open SQL语句,conn,3,23. SQL常用命令使用方法:(1) 数据记录筛选:sql="select * from 数据表where 字段名=字段值order by 字段名[desc]"sql="select * from 数据表where 字段名like \'%字段值%\' order by 字段名[desc]"sql="select top 10 * from 数据表where 字段名order by 字段名[desc]"sql="select * from 数据表where 字段名in (\'值1\',\'值2\',\'值3\')"sql="select * from 数据表where 字段名between 值1 and 值2"(2) 更新数据记录:sql="update 数据表set 字段名=字段值where 条件表达式"sql="update 数据表set 字段1=值1,字段2=值2 ……字段n=值n where 条件表达式" (3) 删除数据记录:sql="delete from 数据表where 条件表达式"sql="delete from 数据表" (将数据表所有记录删除)(4) 添加数据记录:sql="insert into 数据表(字段1,字段2,字段3 …) values (值1,值2,值3 …)"sql="insert into 目标数据表select * from 源数据表" (把源数据表的记录添加到目标数据表) (5) 数据记录统计函数:AVG(字段名) 得出一个表格栏平均值COUNT(*|字段名) 对数据行数的统计或对某一栏有值的数据行数统计MAX(字段名) 取得一个表格栏最大的值MIN(字段名) 取得一个表格栏最小的值SUM(字段名) 把数据栏的值相加引用以上函数的方法:sql="select sum(字段名) as 别名from 数据表where 条件表达式"set rs=conn.excute(sql)用rs("别名") 获取统的计值,其它函数运用同上。
ASP ODBC连接数据库通过ODBC(Open Database Connectivity),用户可以选择希望创建的DSN(D ata Source Name)类型,是用户、系统或文件,其中用户和系统DSN存储在Win dows NT注册表中。
●系统DSN允许所有的用户登录到特定的服务器上去访问数据库。
●用户DSN使用适当的安全身份证明限制数据库到特定用户的连接。
●文件DSN用于从文本文件中获取表格,提供了对多用户的访问,并且通过复制DSN文件,可以轻易地从一个服务器转移到另一个服务器。
数据库驱动程序使用(DSN)定位和标识特定的ODBC兼容数据库,将信息从Web应用程序传递给数据库。
典型情况下,DSN包含数据库配置、用户安全性和定位信息,且可以获取Windows NT注册表项中或文本文件的表格。
1.连接Access数据库通过ODBC连接Access数据库还可分为两种形式,一种是使用ODBC数据源(即DSN),另一种是使用ODBC驱动程序而没有DSN。
要使用ODBC数据源连接Access数据库,首先需要注册ODBC数据源,要在ASP页面中访问DSN,必须将要访问的DSN设置为系统DSN。
可按照如下步骤进行注册。
(1)依次选择【开始】|【设置】|【控制面板】命令,然后双击【管理工具】|【数据源】打开ODBC数据源管理器,如图5-35所示。
图5-35 ODBC数据源管理器图5-36 创建新数据源(2)在图5-35中,选择【系统DSN】选项页,然后单击【添加】按钮,进入“创建新数据源”对话框,如图5-36所示。
因为现在要注册的是Access数据库的ODBC数据源,所以在图5-36中应该选择第二项“Driver do Microsoft Access(*. mdb)”。
(3)单击【完成】按钮,进入“ODBC Microsoft Access安装对话框”,设置数据源名为“bbs”。
(4)再单击【选择】按钮在弹出的对话框中选择一个Access数据库文件,例如这里的itZcnBBS7.mdb,如图5-37所示。
ASP连接数据库的种方法
一、Connection 对象连接数据库
1、基本连接
采用基本的Connection对象来连接数据库,所需的参数信息包括数
据库名、用户名以及密码等,多数情况下,我们会把这样的连接参数保存
在一个文件里,这样,我们在每次连接数据库时,只需要读取该文件,然
后使用Connection 对象来连接数据库即可。
2、使用属性连接
使用属性连接是比较常用的一种数据库连接方法,它可以将连接参数
分别保存到一个全局性的Properties 对象中,当我们需要连接数据库时,只需要先读取该Properties 对象,然后使用Connection 对象来创建连接。
3、使用JDBC缓存连接
JDBC缓存技术可以提高数据库查询的性能,当使用一个缓存连接时,它会将查询的结果缓存在内存中,然后在接下来的查询中,可以直接使用
缓存的结果来实现查询加速。
要使用JDBC缓存技术,我们需要先创建一
个Connection 对象,然后使用该Connection对象创建一个JDBC缓存连接,然后就可以使用JDBC查询加速技术来实现数据库查询。
二、JDBC程序连接数据库
1、使用JDBC驱动程序连接数据库
JDBC驱动程序是一个允许Java程序访问数据库的一种中间件,它能
够连接到支持JDBC的数据库,从而使用户可以通过JDBC程序连接数据库。
连接数据库代码实例1,连接数据库代码文件名称conn.asp 所有访问数据库的文件都调用此文件<!--#include file=\"Conn.asp\"--><%db=\"data/data.mdb\" \'数据库存放目录on error resume nextset conn=server.createobject(\"adodb.connection\")conn.open \"driver={microsoft access driver (*.mdb)};dbq=\"&server.mappath(db)if err thenerr.clearset conn = Nothingresponse.write \"数据库连接出错,请检查conn.asp中的连接字符串。
\" response.endend iffunction CloseDBConn.Closeset Conn=NothingEnd Function%><%dim badwordbadword=\"\'|and|select|update|chr|delete|%20from|;|insert|mid|master.|set|c hr(37)|=\"if request.QueryString<>\"\" thenchk=split(badword,\"|\")for each query_name in request.querystringfor i=0 to ubound(chk)if instr(lcase(request.querystring(query_name)),chk(i))<>0 thenresponse.write \"<script language=javascript>alert(\'传参错误!参数\"&query_name&\" 的值中包含非法字符串!\\n\\n\');location=\'\"&request.ServerVariables(\"HTTP_REFERER\")&\"\'</Script>\" response.endend ifnextnextend if%>----------------------------------------------2。