当前位置:首页 > 编程学习 > VB连接SQLServer数据库操作代码

VB连接SQLServer数据库操作代码

编程学习2007-10-0358870

第一步,在ModConString模块中定义一系列变量

'定义一个属性过程反映连接字符串

Public Property Get conString() As Variant
    conString =  "data source=.;initial catalog=Sims_four;user 
End  Property


'定义一个提供者反映数据库类型

Public Property Get conProvide() As  Variant
    conProvide = "sqloledb"
End Property


第二步,建立一个类OpenRs.cls

Option Explicit
Private cnSIMS As ADODB.Connection                  '声明一个连接
Private rsSims As ADODB.Recordset                  '声明一个连接记录集
Public rs1 As ADODB.Recordset                      '声明一个连接到所需表的记录集
Public  rs2 As ADODB.Recordset
Public rst As ADODB.Recordset
Private Data As  Object
'---------------------------------------------------------
'  在类初始化时建立连接
'---------------------------------------------------------
Private  Sub Class_Initialize()
    On Error GoTo DbnotOpen
    Set cnSIMS = New  ADODB.Connection
    With cnSIMS
        .Provider = conProvide
        .ConnectionString = conString
        .ConnectionTimeout = 10
        .Open
        Set rst = New ADODB.Recordset
    End With
    Exit  Sub
DbnotOpen:
    If Err = -2147467259 Then
        Set cnSIMS =  Nothing
        MsgBox "连接后台数据库失败!" & vbCrLf & vbCrLf &  "请检查配置是否完好,数据库Sims_four是否存在?", vbOKOnly + vbInformation, "学生信息管理系统"
        End
    End If
End  Sub
'---------------------------------------------------------
'data是一个指向ADO记录集的对象的引用
'用于设置class的数据源内容
'---------------------------------------------------------
Private  Sub Class_GetDataMember(DataMember As String, Data As Object)
    Set Data =  rsSims
End Sub
'-------------------------------------------------------
'建立一个可以打开记录集的函数,需要是必须把表名传给函数
'-------------------------------------------------------
Public  Function rsDK(Table As String)
    Set rsSims = New ADODB.Recordset
    With rsSims
        .Source = Table
        .ActiveConnection = cnSIMS
        .CursorType = adOpenKeyset
        .LockType = adLockOptimistic
        .Open , ,  , , adCmdTable
    End With
End  Function
'-------------------------------------------------------
'建立一个可以打开记录集(动态游标)的函数
'需要把SQL语句传递给函数
'-------------------------------------------------------
Public  Function rsDK1(sql As String)
    Set rs1 = New ADODB.Recordset
    With  rs1
        .Source = sql
        .ActiveConnection = cnSIMS
        .CursorType =  adOpenKeyset
        .LockType = adLockOptimistic
        .Open , , , ,  adCmdText
    End With
End  Function
'-------------------------------------------------------
'建立一个可以打开记录集(静态游标)的函数
'需要把SQL语句传递给函数
'-------------------------------------------------------
Public  Function rsDK2(sql As String)
    Set rs2 = New ADODB.Recordset
    With  rs2
        .Source = sql
        .ActiveConnection = cnSIMS
        .CursorType =  adOpenStatic
        .LockType = adLockOptimistic
        .Open , , , ,  adCmdText
    End With
End  Function
'-------------------------------------------------------
'类终止时,释放一切可能占据的资源
'-------------------------------------------------------
Private  Sub Class_Terminate()
    Set cnSIMS = Nothing
    Set rs1 =  Nothing
    Set rs2 = Nothing
    Set rsSims = Nothing
    Set rst =  Nothing
End Sub



第三步,在窗体中使用这个类

Option Explicit
Dim myModiStudent As OpenRs   '声明连接数据库的类
Private Sub  Form_Load()
    Set myModiStudent = New OpenRs
    myModiStudent.rsDK1 "SELECT *  FROM student_info" ’打开表,红字是表名
    If Not  myModiStudent.rs1.EOF Then
        Set StudentGrid.DataSource = myModiStudent.rs1  ’这里用到了MSHFlexGrid 控件
    End If
End Sub


OK,成功拉。VB连接SQLServer数据库操作代码  编程 数据库 VB 第1张



扫描二维码推送至手机访问。

版权声明:本文由海阔天空发布,如需转载请注明出处。

本文链接:https://apull.net/html/20071003103.html

分享给朋友:

相关文章

SHFileOperation介绍

SHFileOperation介绍

SHFileOperation函数功能描述:文件操作,与 Shell 的动作相同.函数原型:#include<shellapi.h> WINSHELLAPI int WINAPI SHFileOperation(LPSHFILEOPSTRUCT lpFileOp);参数:typedef struct _SHFILEOPSTRUCT { HWND hwnd; //父窗口句柄 UINT wFu...

 C++ string类常用函数

C++ string类常用函数

string类的构造函数:string(const char *s);    //用c字符串s初始化 string(int n,char  c);     //用n个字符c初始化此外,string类还支持默认构造函数和复制构造函数,如string s1;string  s2="hello";都是正确的写法。...

致面向对象技术初学者的一封公开信

致面向对象技术初学者的一封公开信

 致面向对象技术初学者的一封公开信 Alistair Cockburn 著(1996 年2 月),袁峰 译介绍 首先我要解释一下为什么会写这封公开信。这似乎已经成了一种习惯,但这个步骤还是需要的。过去6 年中, 我曾经无数次地在饭店、酒吧、旅店大厅等各种地方以同一种方式度过愉快而漫长的夜晚:和同样追求真理、光明和智慧的伙伴一起探讨面向对象的真谛。现在,我已经可以回答很多当年我遇到的问题。这些同样的问题也在困扰着我的一位新同事,在一家饭店里,我花了整整一个晚上和他讨...

VBScript 错误信息

VBScript 错误信息

错误代码 信息5 无效的过程调用或参数6 溢出7 内存不够9 下标越界10 数组长度固定或临时锁定11 被零除13 类型不匹配14 字符串空间溢出28 堆栈空间溢出35 Sub或Function未定义48 加载D...

发表评论

访客

看不清,换一张

◎欢迎参与讨论,请在这里发表您的看法和观点。