转:VB用ADO连接SQLServer数据库
'数据源信息常量
Public Const conn As String = "Provider = SQLOLEDB.1;Password = sa; UserID = sa; Initial Catalog = StudentFiles; Data Source = localhost"
Public Const CONNECT_LOOP_MAX = 10 '一次执行connect操作,可以访问数据库的次数
Private IsConnect As Boolean '标记数据库是否连接
Private Connect_Num As Integer '标记执行Connect()函数后访问数据的次数
Private cnn As ADDODB.Connection '连接数据库的Connect对象
Private re As ADDODB.Recordset '保存结果集的Recordset对象
//连接数据库
Private Sub Connect()
’如果连接标记为真,则返回。
IF IsConnect = True Then
Exit Sub
End If
Set cnn = New ADODB.Connection '关键new用于创建新对象cnn
cnn.ConnectionString = conn
cnn.Open
'判断连接的状态
If cnn.State <> adStateOpen Then
MsgBox"数据库连接失败"
End
End If
'设置连接标识,表示已经连接到数据库
IsConnect = True
End Sub
'断开与数据库的连接
Private Sub DisConnect()
Dim rc As Long
If IsConnect = False Then
Exit Sub
End If
'关闭连接
cnn.Close
'释放cnn
Set cnn = Nothing
IsConnect = False
End Sub
'使用Connect_Num控制数据连接
Public Sub DB_Connect()
Connect_Num = Connect_Num + 1
Connect
End Sub
'使用Connect_Num控制数据断开
Public Sub DB_Disconnect()
If Connect_Num >= CONNECT_LOOP_MAX Then
Connect_Num = 0
Disconnect
End If
End Sub
'强制关闭api方式访问俄的数据库,计数器复位
Public Sub DBapi_Disconnect()
Connect_Num = 0
Disconnect
End Sub
'执行数据库操作语言
'byval 就是按参数的值传递,再传递过程中,参数不会发生变化(也就是将参数值而不是将地址传递给过程的方式,这就使过程访问发哦变量的副本,过程不可改变变量的值);
与之对应的是byref,指按参数的地址传值,byref可以省略
Public Sub SQLExt(ByVal TmpSQLstmt As String )
Dim cmd As New ADODB.Command '创建Command对象cmd
DB_Connect '连接数据库
Set cmd.ActiveConnection = cnn '设置cmd的ActiveConnect属性,指定与其关联的数据库连接
cmd.CommandText = TmpSQLstmt '设置要执行的命令文本
'MsgBox TmpSQLstmt
cmd.Execute '执行命令
Set cmd = Nothing
DB_DisConnect '断开与数据库的连接
End Sub
'执行数据库查询语句
Public Function QueryExt(ByVal TmpSQLstmt As String ) As ADODB.Recordset
Dim rst As New ADODB.Recordset '创建Rescordset对象rst
DB_Connect '连接数据库
Set rst.ActiveConnection = cnn '设置rst的ActiveConnection属性,指定与其相关的数据库的连接
rst.CursorType = adOpenDynamic '设置游标类型
rst.LockType = adLockOptimistic '设置锁定类型
rst.Open TmpSQLstmt '打开记录集
Set QueryExt = rst '返回记录集
End Function
转:VB用ADO连接SQLServer数据库的更多相关文章
- jsp连接sqlServer数据库教程
一.首先讲下我用的工具版本以供参考: jar包:jtds1.3.1.jar 下载地址:点击进入 数据库:SQL Server2012 服务器:Tomcat8.0 下载地址:点击进入 开发IDE工 ...
- 使用thinkphp连接sqlserver数据库时提示“系统不支持:sqlsrv”
习惯了使用php跟mysql组合,现在接到项目需要调用客户线下的系统软件的数据,具了解,这个软件的数据库是用sqlserver数据库也就是常说的mssql数据库了. 那么我现在需要用PHP连接sqls ...
- asp.net 连接sqlserver数据库
在asp.net中连接sqlserver数据库之前,首先得确保正常安装了sqlserver2008,同时有数据库. 在项目中添加一个类DB,用来专门负责执行对数据库的增删改查.在添加的过程中会弹出下面 ...
- SQLServer-----使用jTDS连接SQLServer数据库
一.jTDS一个简短的引论 jTDS100%纯Java实现的JDBC3.0驱动,它用于连接 Microsoft SQL Server(6.5.7.2000,2005,2008 和 2012)和Syba ...
- Jmeter连接SqlServer数据库进行压力测试
Jmeter连接SqlServer数据库进行压力测试 前提准备:先安装jdbc驱动 驱动下载链接地址:http://pan.baidu.com/s/1bpDpjSr 密码:v6tn 下载解压之后,讲s ...
- python连接sqlserver数据库
1.准备工作 python3.6连接sqlserver数据库需要引入pymssql模块 pymssql官方:https://pypi.org/project/pymssql/ 没有安装的话需要: pi ...
- JavaWeb连接SQLServer数据库并完成一个登录界面及其功能设计。
一.JDBC连接SQLserver数据库的步骤: 1.下载SQLserver的JDBC驱动文件——Microsoft JDBC Driver 4.0 for SQL Server 2.例如下载得到的文 ...
- 64位程序,利用ADO连接Oracle数据库
刚好手头项目解决了ADO连接Oracle数据库的问题,记录下来,防止忘记. 项目情况:用32位环境完成算法动态库,结果后来需要升级到64位环境,由64位的软件来调用,则在64位设置下生成算法动 ...
- php支持连接sqlserver数据库
php支持连接sqlserver数据库 1.软件配置 Win7 64 +wampserver2.2d-x32+SQL Server 2008 R2数据库,wamp2.2中的php版本是5.3.10. ...
随机推荐
- CodeForces - 1009E Intercity Travelling
题面在这里! 可以发现全是求和,直接拆开算贡献就好了 #include<bits/stdc++.h> #define ll long long using namespace std; c ...
- [UOJ61]怎样更有力气
这个题还是挺有意思的... 一个小结论是:在一个$n$点$m$边的图中,如果度数最小的点度数为$d$,那么$d^2=O(m)$,因为$d\leq\frac{2m}n$,所以$d^2\leq dn\le ...
- poj 1485 dp
转自:http://www.cnblogs.com/kuangbin/archive/2011/11/12/2246407.html [题目大意] 一条公路上有n个旅馆,选出其中k个设置仓库,一个仓库 ...
- 升级到php7和安装拓展(mac centos)
Mac升级到php7 使用homebrew安装php7 brew update #更新源 brew search php #查找源中的php,发现有php7.1版本,安装最新的php7.1 brew ...
- bzoj 2434 ac自动机
ac自动机中,如果以trie中的节点为节点,(fail[i],i)为边,可以建立一颗树,该树有如下特点:“节点u是节点v的祖先 当且仅当 u代表的字符串是v代表的字符串的一个后缀”.(u代表的字符串是 ...
- Markdown---锚点使用
Markdown目前还没有支持文内锚点的标记语法:但是支持html,所以锚点可以通过html语法来实现 使用方法 <a href='#jump'>第一个题目</a> 带有锚点的 ...
- Vue组件深入了解(组件注册和Prop)
一.组件名 自定义组件的名称强烈推荐遵循W3C规范中的方式:字母全小写且必须包含一个连字符. 二.全局注册和局部注册的区别 全局注册 Vue.component进行注册.全局注册的可以在任何创建的实例 ...
- Dart格式化输出
类似于保留几位小数,直接 n.toStringAsFixed() 例如: 1.toStringAsFixed(3); // 1.000 (4321.12345678).toStringAsFixed( ...
- mysql-bin.000001
今天发现/usr/local/mysql/var下很多mysql-bin.000001.mysql-bin.000002文件,GOOGLE之..这是数据库的操作日志,例如UPDATE一个表,或者DEL ...
- Python可执行对象——exec、eval、compile
Python提供的调用可执行对象的内建函数进行说明,涉及exec.eval.compile三个函数.exec语句用来执行存储在代码对象.字符串.文件中的Python语句,eval语句用来 ...