目录
最近参与了一个ASP项目,而且这也是自己第一次进行web方面的编程;作为3P之一的ASP应该是很老的技术了,但这并妨碍自己的积累和学习,尤其是web编程方面。在这里我想跟大家分享下在ASP服务端如何通过ADO访问ACCESS和SQL SERVER:
ADO是一个访问数据库中数据的编程接口,是微软的一个Active-x组件,会随IIS被自动安装;在做ASP编程的时候,安装IIS(即Internet informations service)是必不可少的;
首先确保OS上已正确安装了ACCESS和SQL SERVER,由于家里电脑上没有装SQL SERVER,下面以在xp平台上访问ACCESS2003数据库为例来测试下自己写的几个数据库访问函数
1.通过.udl文件获取数据库连接字符串
2.通过连接字符串创建相关数据库操作函数
3、对创建的数据库函数进行测试,这里以GXY_DB1数据库下的表Test_table为例,该表的各字段及全部记录如图-4和图-5所示:
4.总结:
首页 数据库 mysql教程 ASP中通过ADO访问ACCESS和SQL SERVER

ASP中通过ADO访问ACCESS和SQL SERVER

Jun 07, 2016 pm 03:39 PM
access asp sql 访问 通过

最近参与了一个ASP项目,而且这也是自己第一次进行web方面的编程;作为3P之一的ASP应该是很老的技术了,但这并妨碍自己的积累和学习,尤其是web编程方面。在这里我想跟大家分享下在ASP服务端如何 通过 ADO 访问 ACCESS和SQL SERVER: ADO是一个 访问 数据库中

最近参与了一个ASP项目,而且这也是自己第一次进行web方面的编程;作为3P之一的ASP应该是很老的技术了,但这并妨碍自己的积累和学习,尤其是web编程方面。在这里我想跟大家分享下在ASP服务端如何通过ADO访问ACCESS和SQL SERVER:

ADO是一个访问数据库中数据的编程接口,是微软的一个Active-x组件,会随IIS被自动安装;在做ASP编程的时候,安装IIS(即Internet informations service)是必不可少的;

首先确保OS上已正确安装了ACCESS和SQL SERVER,由于家里电脑上没有装SQL SERVER,下面以在xp平台上访问ACCESS2003数据库为例来测试下自己写的几个数据库访问函数

1.通过.udl文件获取数据库连接字符串

1)新建一个txt文件,并修改后缀名为.udl;直接双击打开该udl文件后我们就可以根据需要获取特定数据库的连接字符串了;打开udl后的界面如图-1所示:

ASP中通过ADO访问ACCESS和SQL SERVER

图-1

2)在这里我们选择Microsoft.Jet.OLEDB.4.0数据库提供程序来访问access,点击下一步后界面如图-2所示:

ASP中通过ADO访问ACCESS和SQL SERVER

图-2

3)输入或选择数据库所在路径后,其它选项保持默认,点击测试连接后,没有问题的情况下会弹出提示【测试连接成功】的消息框;

这时,我们点击确定后用UE或者其它文本编辑工具打开该udl文件后,即可获取连接该access数据库的连接字符串;

如图-3所示:这里的连接字符串即为:Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\IIS\webapps\My_Test\GXY_DB1.mdb;Persist Security Info=False

ASP中通过ADO访问ACCESS和SQL SERVER

图-3

2.通过连接字符串创建相关数据库操作函数

1.)新建ProDatBase.asp文件,并插入空的ASP代码段;在该代码段中声明三个全局变量;分别用来存储ADO记录集对象、ADO连接对象、以及连接字符串;

将上面获取的连接字符串赋值给g_ConStr

<p><span>Dim g_Rs,g_Con,g_ConStr</span></p><p><span>g_ConStr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=D:\IIS\webapps\My_Test\GXY_DB1.mdb;Persist Security Info=False"</span></p>
登录后复制
       2.)创建数据连接和断开连接函数

'连接数据库
function ConnectDataBase()
	set g_Con=server.CreateObject("ADODB.connection")
	on error resume next
	g_Con.mode=3           '将连接模式设为可读取写
	g_Con.open g_ConStr
	if err0 then
	ConnectDataBase=false
	response.Write(err.Description)
	else 
	ConnectDataBase=true
	end if
end function

'断开数据库连接
function DisconnectDataBase()
	on error resume next
	g_Con.close
	set g_Con=nothing
	if err0 then
	DisconnectDataBase=false
	response.Write(err.Description)
	else 
	DisconnectDataBase=true
	end if
end function
登录后复制
3.)创建插入记录函数
'插入记录
function InsertRecord(table,sqlFields,sqlValues)
if ConnectDataBase() then
	sql="insert into ["+table+"] ("+sqlFields+") values ("+sqlValues+") "
	on error resume next
	g_Con.Execute sql
	if err 0 then
	response.Write(err.Description)
	end if
	DisconnectDataBase()
end if
end function
登录后复制

4.)创建更新记录函数

'更新记录
function UpdateRecord(table,sqlFields,sqlValues,strCondition)
if ConnectDataBase() then
	sql="update ["+table+"] set "
	sql_fd=split(sqlFields,",")
	sql_fv=split(sqlValues,",")
	for i=0 to ubound(sql_fd)
	if iubound(sql_fd) then
	sql=sql & ""&sql_fd(i)&"="&sql_fv(i)&","
	else
	sql=sql & ""&sql_fd(i)&"="&sql_fv(i)&""
	end if
	next
	sql=sql&" where "&strCondition&""
	on error resume next
	g_Con.Execute sql
	if err 0 then
	response.Write(err.Description)
	end if
	DisconnectDataBase()
end if
end function
登录后复制

5.)创建删除记录函数

'根据条件删除记录
function DeleteRecord(table,strCondition)
if ConnectDataBase() then
	sql="delete from "+table+" where "&strCondition&" "
	on error resume next
	g_Con.Execute sql
	if err 0 then
	response.Write(err.description)
	end if
	DisconnectDataBase()
end if
end function
登录后复制

6.)创建记录获取函数

'根据条件获取记录
function GetRecords(table,strCondition)
if ConnectDataBase() then
	sql="select * from ["+table+"]"
	if strCondition "" then
	sql=sql&" where "&strCondition&""
	end if
	on error resume next
	set g_Rs=Server.CreateObject("ADODB.recordset")
	g_Rs.Open sql,g_Con
	if err 0 then
	response.Write(err.description)
	end if
end if
end function
登录后复制

7.)创建资源释放函数

function ReleaseResource()
on error resume next
g_Rs.close
set g_Rs=nothing
DisconnectDataBase()
if err0 then
response.Write(err.description)
end if
end function
登录后复制

3、对创建的数据库函数进行测试,这里以GXY_DB1数据库下的表Test_table为例,该表的各字段及全部记录如图-4和图-5所示:

ASP中通过ADO访问ACCESS和SQL SERVERASP中通过ADO访问ACCESS和SQL SERVER

-4(id自动增长)                                                                     图-5(没有记录)


准备:新建ProDataBase_Test.asp文件,添加包含ProDataBase.asp文件的语句,插入空的asp代码块

       1.)插入记录函数测试:插入10条记录,name和age依次从name0和15岁到name9和24岁

测试代码:

登录后复制

测试结果如图-6所示:

ASP中通过ADO访问ACCESS和SQL SERVER

-6

      2.)获取记录函数测试:获取age在18到23之间的记录并显示在网页上

测试代码:

<div align="center">
Test_Table
<table border="2" bgcolor="#99FFFF">
")
for each x in g_Rs.fields
   response.Write("<th>")
   response.write(x.name)
    response.Write("</th>")
next 
response.Write("")
do until g_Rs.eof
response.Write("<tr>")
for each x in g_Rs.fields
   response.Write("<td width="90">")
   response.write(x.value)
   response.Write("</td>")
next 
   response.Write("</tr>")
   g_Rs.movenext
loop
ReleaseResource()
%>
</table>
</div>
登录后复制
登录后复制

测试结果如图-7所示:

ASP中通过ADO访问ACCESS和SQL SERVER

-7

3.)更新记录函数测试:将name=name7的记录的name改为newname,age改为99岁,并将获取所有记录显示在网页上

测试代码:

<div align="center">
Test_Table
<table border="2" bgcolor="#99FFFF">
")
for each x in g_Rs.fields
   response.Write("<th>")
   response.write(x.name)
    response.Write("</th>")
next 
response.Write("")
do until g_Rs.eof
response.Write("<tr>")
for each x in g_Rs.fields
   response.Write("<td width="90">")
   response.write(x.value)
   response.Write("</td>")
next 
   response.Write("</tr>")
   g_Rs.movenext
loop
ReleaseResource()
%>
</table>
</div>
登录后复制
登录后复制

测试结果如图-8所示:

ASP中通过ADO访问ACCESS和SQL SERVER

图-8

4.)删除记录函数测试:删除age大于18岁的记录,并将获取所有记录显示在网页上

测试代码:

<div align="center">
Test_Table
<table border="2" bgcolor="#99FFFF">
18"
GetRecords 	 "Test_Table",""

response.Write("<tr>")
for each x in g_Rs.fields
   response.Write("<th>")
   response.write(x.name)
    response.Write("</th>")
next 
response.Write("</tr>")
do until g_Rs.eof
response.Write("<tr>")
for each x in g_Rs.fields
   response.Write("<td width="90">")
   response.write(x.value)
   response.Write("</td>")
next 
   response.Write("</tr>")
   g_Rs.movenext
loop
ReleaseResource()
%>
</table>
</div>
登录后复制

测试结果如图-9所示:

ASP中通过ADO访问ACCESS和SQL SERVER

图-9


4.总结:

上述所有函数在win7和xp平台以及access2003和sql server2008 express版(vs2010自带的)上均测试过,可以正常运行;下面提供一个连接sql server2008的连接字符串供参考:(也是通过udl文件创建的,数据提供程序选择sql server native client 10.0)

g_ConStr="Provider=SQLNCLI10.1;Persist Security Info=False;User ID=gxy;Password=54321;Initial Catalog=GXY_DB1;Data Source=(local);
登录后复制
      第一次发博客,文笔又不行,vbscript刚接触,函数写的不够高效及简洁。。。等等。。。。。如有不当及纰漏之处,请各路大牛多多指教
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热门文章

<🎜>:泡泡胶模拟器无穷大 - 如何获取和使用皇家钥匙
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
北端:融合系统,解释
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
Mandragora:巫婆树的耳语 - 如何解锁抓钩
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

热门话题

Java教程
1664
14
CakePHP 教程
1423
52
Laravel 教程
1321
25
PHP教程
1269
29
C# 教程
1249
24
apache怎么配置zend apache怎么配置zend Apr 13, 2025 pm 12:57 PM

如何在 Apache 中配置 Zend?在 Apache Web 服务器中配置 Zend Framework 的步骤如下:安装 Zend Framework 并解压到 Web 服务器目录中。创建 .htaccess 文件。创建 Zend 应用程序目录并添加 index.php 文件。配置 Zend 应用程序(application.ini)。重新启动 Apache Web 服务器。

使用DICR/YII2-Google将Google API集成在YII2中 使用DICR/YII2-Google将Google API集成在YII2中 Apr 18, 2025 am 11:54 AM

vProcesserazrabotkiveb被固定,мнелостольностьстьс粹馏标д都LeavallySumballanceFriablanceFaumDoptoMatification,Čtookazalovnetakprosto,kakaožidal.posenesko

Debian Apache日志中如何识别恶意访问 Debian Apache日志中如何识别恶意访问 Apr 13, 2025 am 07:30 AM

有效监控和防御恶意网站访问对于Debian系统的Apache服务器至关重要。Apache访问日志是识别此类威胁的关键信息来源。本文将指导您如何分析日志并采取防御措施。识别恶意访问行为Debian系统的Apache访问日志通常位于/var/log/apache2/access.log。您可以通过多种方法分析日志:日志文件位置确认:首先,请确认您的Apache访问日志的准确位置,它可能因系统配置而略有不同。命令行工具分析:使用grep命令搜索特定模式,例如grep"404"

apache服务器是什么 apache服务器是干嘛的 apache服务器是什么 apache服务器是干嘛的 Apr 13, 2025 am 11:57 AM

Apache服务器是强大的Web服务器软件,充当浏览器与网站服务器间的桥梁。1. 它处理HTTP请求,根据请求返回网页内容;2. 模块化设计允许扩展功能,例如支持SSL加密和动态网页;3. 配置文件(如虚拟主机配置)需谨慎设置,避免安全漏洞,并需优化性能参数,例如线程数和超时时间,才能构建高性能、安全的Web应用。

nginx限流怎么解决 nginx限流怎么解决 Apr 14, 2025 pm 12:06 PM

Nginx 限流问题可通过以下方法解决:使用 ngx_http_limit_req_module 限制请求次数;使用 ngx_http_limit_conn_module 限制连接数;使用第三方模块(ngx_http_limit_connections_module、ngx_http_limit_rate_module、ngx_http_access_module)实现更多限流策略;使用云服务(Cloudflare、Google Cloud Rate Limiting、AWS WAF)进行 DD

如何利用Debian Apache日志提升网站性能 如何利用Debian Apache日志提升网站性能 Apr 12, 2025 pm 11:36 PM

本文将阐述如何通过分析Debian系统下的Apache日志来提升网站性能。一、日志分析基础Apache日志记录了所有HTTP请求的详细信息,包括IP地址、时间戳、请求URL、HTTP方法和响应代码等。在Debian系统中,这些日志通常位于/var/log/apache2/access.log和/var/log/apache2/error.log目录下。理解日志结构是有效分析的第一步。二、日志分析工具您可以使用多种工具分析Apache日志:命令行工具:grep、awk、sed等命令行工具可

Nginx性能监控与故障排查工具使用 Nginx性能监控与故障排查工具使用 Apr 13, 2025 pm 10:00 PM

Nginx性能监控与故障排查主要通过以下步骤进行:1.使用nginx-V查看版本信息,并启用stub_status模块监控活跃连接数、请求数和缓存命中率;2.利用top命令监控系统资源占用,iostat和vmstat分别监控磁盘I/O和内存使用情况;3.使用tcpdump抓包分析网络流量,排查网络连接问题;4.合理配置worker进程数,避免并发处理能力不足或进程上下文切换开销过大;5.正确配置Nginx缓存,避免缓存大小设置不当;6.通过分析Nginx日志,例如使用awk和grep命令或ELK

SQL的目的:与MySQL数据库进行交互 SQL的目的:与MySQL数据库进行交互 Apr 18, 2025 am 12:12 AM

SQL用于与MySQL数据库交互,实现数据的增、删、改、查及数据库设计。1)SQL通过SELECT、INSERT、UPDATE、DELETE语句进行数据操作;2)使用CREATE、ALTER、DROP语句进行数据库设计和管理;3)复杂查询和数据分析通过SQL实现,提升业务决策效率。

See all articles