⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 frmrdo.frm

📁 VB实现各种方式连接数据库
💻 FRM
字号:
VERSION 5.00
Object = "{5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0"; "msflxgrd.ocx"
Begin VB.Form frmRDO 
   Caption         =   "RDO Test"
   ClientHeight    =   3645
   ClientLeft      =   60
   ClientTop       =   345
   ClientWidth     =   6780
   LinkTopic       =   "Form1"
   ScaleHeight     =   3645
   ScaleWidth      =   6780
   StartUpPosition =   3  '窗口缺省
   Begin MSFlexGridLib.MSFlexGrid MSFlexGrid1 
      Height          =   3495
      Left            =   60
      TabIndex        =   6
      Top             =   60
      Width           =   3675
      _ExtentX        =   6482
      _ExtentY        =   6165
      _Version        =   393216
   End
   Begin VB.CommandButton cmdOleDbConn 
      Caption         =   "OleDb连接"
      Height          =   375
      Left            =   3840
      TabIndex        =   5
      Top             =   0
      Width           =   1155
   End
   Begin VB.CommandButton cmdODBCConn 
      Caption         =   "ODBC连接"
      Height          =   375
      Left            =   5340
      TabIndex        =   4
      Top             =   0
      Width           =   1155
   End
   Begin VB.CommandButton cmdODBCAdd 
      Caption         =   "ODBC新增"
      Height          =   375
      Left            =   5340
      TabIndex        =   3
      Top             =   480
      Width           =   1155
   End
   Begin VB.CommandButton cmdOleDbAdd 
      Caption         =   "OleDb新增"
      Height          =   375
      Left            =   3840
      TabIndex        =   2
      Top             =   480
      Width           =   1155
   End
   Begin VB.CommandButton cmdOleDbDelete 
      Caption         =   "OleDb删除"
      Height          =   375
      Left            =   3840
      TabIndex        =   1
      Top             =   960
      Width           =   1155
   End
   Begin VB.CommandButton cmdODBCDelete 
      Caption         =   "ODBC删除"
      Height          =   375
      Left            =   5340
      TabIndex        =   0
      Top             =   960
      Width           =   1155
   End
End
Attribute VB_Name = "frmRDO"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
'1RDO只支持远程数据连接
'2RDO查询记录集只读,修改记录集可以通过rdoConnection的Execute(SQL)方式实现
'3记录集游标只能向前

Option Explicit
Dim rdoEn As rdoEngine
Dim rdoEv As rdoEnvironment
Dim rdoCn As rdoConnection
Dim rdoRS As rdoResultset

Private Sub cmdOleDbAdd_Click()
'    rdoRS.AddNew
'    rdoRS(0) = 4
'    rdoRS(1) = "rdo"
'    rdoRS.Update
    rdoCn.Execute "insert into stu(id,name) values(4,'rdo')"
    MsgBox "新增数据"
    cmdOleDbConn_Click
End Sub

Private Sub cmdOleDbConn_Click()
    MSFlexGrid1.Clear
    'DAO直连数据库文件
    Set rdoEn = rdoEngine
    Set rdoEv = rdoEn.rdoEnvironments(0)
    Set rdoCn = rdoEv.OpenConnection("", , , "DSN=db;UID=;PWD=;")
    Set rdoRS = rdoCn.OpenResultset("SELECT * FROM stu")
'    rdoRS.LockType = rdConcurLock
    '数据加载
    If rdoRS Is Nothing Or rdoRS.rowcount = 0 Then Exit Sub
    '计算行数
    Dim rowcount As Integer
    Set rdoRS = rdoCn.OpenResultset("SELECT * FROM stu")
    rowcount = 0
    Do While Not rdoRS.EOF
        rowcount = rowcount + 1
        rdoRS.MoveNext
    Loop
    '加载表头
    MSFlexGrid1.Rows = rowcount + 1
    MSFlexGrid1.Cols = rdoRS.rdoColumns.Count + 1
    Dim i As Integer
    For i = 0 To rdoRS.rdoColumns.Count - 1
        MSFlexGrid1.TextMatrix(0, i + 1) = rdoRS.rdoColumns(i).Name
    Next
    '加载数据
    Set rdoRS = rdoCn.OpenResultset("SELECT * FROM stu")
    For i = 1 To rowcount
        Dim j As Integer
        For j = 0 To rdoRS.rdoColumns.Count - 1
            MSFlexGrid1.TextMatrix(i, j + 1) = rdoRS(j).Value
        Next j
        rdoRS.MoveNext
    Next i
End Sub

Private Sub cmdOleDbDelete_Click()
'    rdoRS.MoveLast
'    rdoRS.Delete
    rdoCn.Execute "delete from stu where id=4"
    MsgBox "删除数据"
    cmdOleDbConn_Click
End Sub

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -