vba的一个DB操作类
- Option Explicit
- '--------------------------------------------------------
- '[Class Name]: DBHelper
- '[Description]: databse access class
- '--------------------------------------------------------
- 'variable
- Private mConn As ADODB.Connection
- Private mIsOpen As Boolean
- Private mIsBeginTran As Boolean
- Private Const MAX_TIME_OUT As Integer = 'command timeout(unit:second)
- '--------------------------------------------------------
- '[Function name]: OpenConnection
- '[Description]: DB connection
- '[Parameter]: (1)Server name (2)Database name (3)User name (4)Password
- '--------------------------------------------------------
- Public Sub OpenConnection(ByVal Server As String, ByVal Database As String, _
- ByVal Username As String, ByVal Password As String)
- Dim connString As String
- connString = OleDbConnectionString(Server, Database, Username, Password)
- Set mConn = New ADODB.Connection
- mConn.CommandTimeout = MAX_TIME_OUT
- mConn.Open connString
- mIsOpen = True
- End Sub
- '--------------------------------------------------------
- '[Function name]: Dispose
- '[Description]: Dispose
- '--------------------------------------------------------
- Public Sub Dispose()
- If mIsOpen Then
- mConn.Close
- End If
- mIsOpen = False
- Set mConn = Nothing
- End Sub
- '--------------------------------------------------------
- '[Function name]: ExecuteNoQuery
- '[Description]: SQL execute
- '[Parameter]: (1)SQL statement
- '--------------------------------------------------------
- Public Sub ExecuteNoQuery(ByVal strSQL As String)
- If mIsOpen Then
- mConn.Execute (strSQL)
- End If
- End Sub
- '--------------------------------------------------------
- '[Function name]: ExecuteRecordset
- '[Description]: SQL excute
- '[Parameter]: (1)SQL
- '[Return Value]: ADODB.Recordset
- '--------------------------------------------------------
- Public Function ExecuteRecordset(ByVal strSQL As String) As ADODB.recordSet
- Dim rs As New ADODB.recordSet
- If mIsOpen Then
- rs.CursorLocation = adUseClient
- rs.Open strSQL, mConn, adOpenForwardOnly, adLockReadOnly
- End If
- Set ExecuteRecordset = rs
- End Function
- '--------------------------------------------------------
- '[Function name]: BenginTrans
- '[Description]: begin trans
- '--------------------------------------------------------
- Public Sub BeginTrans()
- If mIsOpen Then
- mConn.BeginTrans
- mIsBeginTran = True
- End If
- End Sub
- '--------------------------------------------------------
- '[Function name]: CommitTrans
- '[Description]: commint trans
- '--------------------------------------------------------
- Public Sub CommitTrans()
- If mIsOpen And mIsBeginTran Then
- mConn.CommitTrans
- mIsBeginTran = False
- End If
- End Sub
- '--------------------------------------------------------
- '[Function name]: RollbankTrans
- '[Description]: rollback trans
- '--------------------------------------------------------
- Public Sub RollbackTrans()
- If mIsOpen And mIsBeginTran Then
- mConn.RollbackTrans
- mIsBeginTran = False
- End If
- End Sub
- '--------------------------------------------------------
- '[Function name]: OleDbConnectionString
- '[Description]: create DB conn string
- '[Parameter]: (1)server (2)database (3)username (4)password
- '[Return Value]: DB conn string
- '--------------------------------------------------------
- Private Function OleDbConnectionString(ByVal Server As String, ByVal Database As String, _
- ByVal Username As String, ByVal Password As String) As String
- If Username = "" Then
- OleDbConnectionString = "Provider=SQLOLEDB.1;Data Source=" & Server _
- & ";Initial Catalog=" & Database _
- & ";Integrated Security=SSPI;Persist Security Info=False;"
- Else
- OleDbConnectionString = "Provider=SQLOLEDB.1;Data Source=" & Server _
- & ";Initial Catalog=" & Database _
- & ";User ID=" & Username & ";Password=" & Password & ";"
- End If
- End Function
- '--------------------------------------------------------
- '[Function name]: Class_Initialize
- '[Description]: class initialize
- '--------------------------------------------------------
- Private Sub Class_Initialize()
- End Sub
- '--------------------------------------------------------
- '[function name]: Class_Initialize
- '[description]: terminate
- '--------------------------------------------------------
- Private Sub Class_Terminate()
- Call Dispose
- End Sub
vba的一个DB操作类的更多相关文章
- vba的一个File操作类
Option Explicit '-------------------------------------------------------- '[Class name]: clsTxtFile ...
- Java-编写一个jdbc操作类
1.通过读取文件配置 package 数据库操作类; /* * Db.java Created on 2007年8月20日, 上午 8:37 */ import java.io.*; import j ...
- 一个数据库操作类,适用于Oracle,ACCESS,SQLSERVER
最近做了一个数据诊断的项目,里面自己写了一个数据库的操作类,包含:连接数据库.读数据表.执行SQL操作,释放数据库等组成,希望对大家有用,由于水平有限,若有错误或者代码不足地方欢迎指正,谢谢. ADO ...
- 51)PHP,一个数据库操作类的代码
<?php //类名,也习惯上(推荐)使用跟文件名相似的名字 //定义一个mysql连接类,该类可以连接mysql数据库 //并实现其单例模式 //该类的功能还能够完成如下基本mysql操作: ...
- python学习1-博客-DB操作类
#学习python,准备写一个博客,第一天:在别人代码基础上写一个数据库操作的db.py1)python代码 #!/usr/bin/env python # -*- coding: UTF-8 -*- ...
- 一个端口操作类PortHelper
此操作类主要使用了系统命令行来实现的,详细的命令可参照微软文档<如何使用"netsh advfirewall firewall"上下文而非“netsh firewall”上下 ...
- 封装一个redis操作类来操作hash格式
最近项目要用redis,依然是基于tp3.2. 发现thinkphp3.2自带的缓存类并不好使用,就自己封装了一个 目前只支持hash格式,其他数据类型的操作后面用到的时候再补充 <?php / ...
- C#封装的一个JSON操作类
using System; using System.Collections.Generic; using System.Collections; using System.Text; using S ...
- Android打造属于自己的数据库操作类。
1.概述 开发Android的同学都知道sdk已经为我们提供了一个SQLiteOpenHelper类来创建和管理SQLite数据库,通过写一个子类去继承它,就可以方便的创建.管理数据库.但是当我们需要 ...
随机推荐
- java 中获得 资源文件方法
1 java 中获取资源文件的方法 项目目录如下 获取当前项目的目录路径 方法一:使用类名 MergeDocHandler.class.getClassLoader().getResource(&qu ...
- 在springboot 和 mybatis 项目中想要显示sql 语句进行调试
在springBoot+Mybatis日志显示SQL的执行情况的最简单方法就是在properties新增: logging.level.com.dy.springboot.server.mapper= ...
- curl以cookie的方式登录
curl -o /dev/null -s -w ‘%{time_connect}:%{time_starttransfer}:%{time_total}’ --cookie "UM_dist ...
- Hudson基本工作原理
从SVN下载代码到hudson服务器本地 -> 将SVN下载的源代码,利用maven[maven依赖pom.xml]或者ant[ant依赖build.xml]打包(war包),pom.xml ...
- SVN不显示对号的解决方法
具体操作方法如下: 1.到C:\Windows文件夹下,打开regedit.exe 2.Ctrl+F,搜索“ShellIconOverlayIdentifiers” 3.将TortoiseAdded. ...
- 译:1. 初识 Apache Axis2
欢迎使用Apache Axis2 / Java Apache Axis2 是一个Web Service SOAP / WSDL 引擎,它被广泛用于Apache Axis SOAP 栈. Apache ...
- Umeng社会化组件使用笔记
1.申请umeng账号 2.下载umeng sdk,并且阅读友盟开放文档 3.申请各开放平台的账号,获取appid .appkey.appsecret:注意,这里需要配置安全域名sns.whalecl ...
- 根据第三方提供的webservice地址获取文件信息
import org.apache.axis.client.Call; import org.apache.axis.client.Service; import org.apache.axis.en ...
- tar.xz文件格式的压缩与解压
从网上下载了一个man的安装文件,格式为tar.xz,默认下载到当前目录下 //下载man源码并以原文件名保存,如果要指定保存的文件名用小写-o name指定 curl -O https://www. ...
- vss整合配置连接到Myeclipse中以及中文配置
配置过很久后 再次配置进行记录以免后续备用 1.下载vss插件和安装vss插件 org.vssplugin_1.6.2 解压到myeclipse 安装路径文件夹C:\MyEclipse 8.5\dro ...