网络编程
位置:首页>> 网络编程>> Asp编程>> asp连接各种数据库代码(2)

asp连接各种数据库代码(2)

作者:海啸 来源:海啸博客 发布时间:2008-03-11 11:16:00 

标签:数据库,ado,OLEDB,asp

然后我们再看看调用这个DSN的ASP代码:

oConn.Open "dsn=FcNews;"

DSN-less连接方法:

set adocon=Server.Createobject("adodb.connection")
adoconn.Open"Driver={Microsoft Access Driver(*.mdb)};DBQ="& _
Server.MapPath("数据库所在路径")

说明:其实SQL数据库也可以建立DSN,方法同ACCESS数据库很类似,这里就不重复说明。如果条件允许,推荐大家用DSN连接数据库,因为这里(oConn.Open "dsn=FcNews;"隐藏了书库的地址等信息,即使你的ASP源代码泄露,一般人们很难猜出你的服务器上数据库的路径。不过由于一般大家是使用的虚拟主机,所以一般才用了DSN-LESS方法。还有下面介绍的方法,连接数据库)

下面我又给出了我们常用的OLEDB的连接代码

'oConn.Open "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("" & AccDBPath & "")
SQL数据库的OLE DB连接代码
oConn.Open "Provider=SQLOLEDB.1;Server=127.0.0.1;UID=sa;PWD=mydotcom;Database=" & SQLDBName & ""

最后在这里我给一个简单的连接数据库的函数

<%
' ============================================
' 以下为数据库相关函数
' ============================================
' 初始化数据库连接对象
' 使用原则:最迟调用,最早释放
' ============================================
Dim oConn, ors, sSql
Dim Rs, Sql
'=============================================
' 函数功能:建立数据库的连接
' 函数名称:oDBConnBegin(DBType)
' 参数说明:DBType -- 数据库的类型
'                ConType -- 连接类型(DSN或者OLE DB)
'                DBName -- 数据库名称(数据源名称)
'=============================================
Sub oDBConnBegin(DBType,ConType,DBName)
    ' 如果数据库对象已打开,不要再打开
    If IsObject(oConn) = True Then Exit Sub
    ' 你可以不需要打开数据库连接对象而直接打开记录集对象,但如果你需要打开多个记录集对象的话,效率是很低的。
    ' 如果你不创建一个数据库连接对象,ADO会在每个记录集打开时自动创建一个新的数据库连接对象,就算你用的是相同的SQL语句。
    Set oConn = Server.CreateObject("ADODB.Connection")
    
  On Error Resume Next
    
  ' 选择不同的数据库连接类型
  Select Case DBType
          Case "Acc"
             If ConType = "DSN" Then
                oConn.Open = "dsn=" & DBName
             ElseIf ConType = "OLEDB" Then
                oConn.Open = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("" & DBName & "")
             End If            
          Case "SQL"
             If ConType = "DSN" Then
                oConn.Open = "dsn=" & DBName
             ElseIf ConType = "OLEDB" Then
                oConn.Open "Provider=SQLOLEDB.1;Server=127.0.0.1;UID=sa;PWD=007007;Database=" & DBName & ""
             End If
  End Select
    
    If Err.Number > 0 Then
        ' 显示错误信息,并且发送邮件通知管理员
        Call DBConnError(Err)
        ' 完全地退出正在运行的脚本
        Response.End()
    End If
  Set ors = Server.CreateObject( "ADODB.Recordset" ) 
End Sub       
'=============================================
' 函数功能:释放数据库连接对象
' 函数名称:oDBConnEnd()
'=============================================
Sub oDBConnEnd()
    On Error Resume Next
    ors.Close
    Set ors = Nothing
    oConn.Close
    Set oConn = Nothing
End Sub
'=============================================
' 函数功能:数据库连接错误处理
' 函数名称:DBConnError(ErrInfo)
' 参数说明:ErrInof--系统提示的错误信息
'=============================================
Sub DBConnError(ErrInfo)
    Response.write("数据库连接错误:" & ErrInfo & "<br>")
    Response.write("请发送邮件通知<a href='mailto:" & strAdminEmail & "'>网站管理员</a>!")
    Response.End()
End Sub
%>

怎么样,现在你对数据库的连接是否有了一些了解呢?当然,由于水平有限,如果有什么说的不对的地方还望大家原谅和指教。

0
投稿

猜你喜欢

  • 第一题:ASP中,VBScript的唯一的数据类型是什么?第二题:在ASP中,VBScript有多种控制程序流程语句,如If…Then, S
  • 经过摸索和实践,我把自己的解决方法,写在下面: 说明: 我的Oracle客户端的版本是 oracle 9i, 安装client端的时候,不能
  • 阅读上一篇:FrontPage XP设计教程3——网页的布局 FrontPage XP可以保证用户设计网页与不同的浏览器兼容,它所提供的样式
  • 要使数据库具备更强的抵御侵犯的能力,你要采取几步措施。有些措施只是良好的服务器管理的一部分,如拥有SQL Server最新的补丁,其他则包括
  • 在项目开发中,经常出现这样的需求。在新增或修改一个主表数据时,对应的从表也要进行同步,此时我们是怎么操作的了?典型的方法就是对于主表的各数据
  • 之前说过要聊聊 干职业设计经理的活 的问题,貌似有些朋友对这个事情还挺关心的,我理解为一方面是掌握对付猎头时候的标准答案,一方面是
  • 毫无疑问,Google是当今世界上最成功的互联网公司之一,但是Google也曾推出过一些失败的实验品。还记得Google Accelerat
  • 近又开始做网页,发现之前写的页面不规范,这次从头在来,希望一次比一次进步,先从CSS中的标点符号开始吧,这篇做为草稿已经放了很长时间了,还是
  • 查询一天:select * from table where to_days(column_time) = to_days(now());s
  • 本文通过实例代码介绍了如何在jscript和vbscript中使用操作FileSystemObject(fso)对象模式来编程. 
  • 这个网页颜色表是很好用,鼠标点击颜色即可复制颜色值到剪贴板,方便大家设计取色。下载苏昱css2 样式表中文手册包括颜色表:W3C- 十六色色
  • MySQL GUI Tools是一套图形化桌面应用工具套装,可以用来管理MySQL服务器。该套装工具包含三个工具:MySQL Query B
  • 在我转到wordpress之后第一个考虑的是它的数据库备份恢复问题,因为写bloger都知道,自己的blog记录的都是自己需要的宝贵的资料和
  • 本文介绍FCKeditor在Java环境下的使用方法。一、简介 功能:所见即所得,支持图片和Flash,工具栏可自由配置,使用简单兼容性:I
  • 在CSS样式中,dl部分只是简单的把内外边距设置为0,dd部分有一个clear属性需要特别注意。当某个元素的属性设置float浮动时,它所在
  • 网站用户为什么注册?这个问题在平时我们讨论的并不多。我们常常单纯的在设想如何简化注册流程,如何从细节的关怀入手避免用户注册时填写错误信息造成
  • 定义: 何为触发器?在SQL Server里面也就是对某一个表的一定的操作,触发某种条件,从而执行的一段程序。触发器是一个特殊的存储过程。
  • 请问如何处理Oracle中较大的文本数据?我们可在ASP中予以解决,如在Oracle8i中文版中,建立数据表:CREATE TABLE SY
  • 十要:第一:要认真规划和分析。这是网页设计灵魂工作。创建站点之前,要明确你的网站主要针对哪些访问者,为哪些用户服务,要把握准主页题材第二:网
  • 在了解XHTML代码规范后,我们就要进行CSS布局。首先先介绍一些CSS的入门知识。如果你已经很熟悉了,可以跳过这一节。CSS是Cascad
手机版 网络编程 asp之家 www.aspxhome.com