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

📄 form1.frm

📁 这里采用了两种连接数据库的方法,通过ADO控件连接SQL Server数据库 对所连接的数据库进行数据的修改、添加、删除等操作
💻 FRM
字号:
VERSION 5.00
Begin VB.Form Form1 
   Caption         =   "Form1"
   ClientHeight    =   4995
   ClientLeft      =   60
   ClientTop       =   450
   ClientWidth     =   7530
   LinkTopic       =   "Form1"
   ScaleHeight     =   4995
   ScaleWidth      =   7530
   StartUpPosition =   3  '窗口缺省
   Begin VB.CommandButton Command1 
      Caption         =   "添加"
      Height          =   555
      Left            =   600
      TabIndex        =   14
      Top             =   3480
      Width           =   1275
   End
   Begin VB.CommandButton Command2 
      Caption         =   "删除"
      Height          =   555
      Left            =   1860
      TabIndex        =   13
      Top             =   3480
      Width           =   1275
   End
   Begin VB.CommandButton Command3 
      Caption         =   "修改"
      Height          =   555
      Left            =   3120
      TabIndex        =   12
      Top             =   3480
      Width           =   1275
   End
   Begin VB.CommandButton Command4 
      Caption         =   "保存"
      Height          =   555
      Left            =   4380
      TabIndex        =   11
      Top             =   3480
      Width           =   1275
   End
   Begin VB.CommandButton Command5 
      Caption         =   "取消"
      Height          =   555
      Left            =   5640
      TabIndex        =   10
      Top             =   3480
      Width           =   1275
   End
   Begin VB.CommandButton Command6 
      Caption         =   "首记录"
      Height          =   555
      Left            =   600
      TabIndex        =   9
      Top             =   4080
      Width           =   1275
   End
   Begin VB.CommandButton Command7 
      Caption         =   "前一条"
      Height          =   555
      Left            =   1860
      TabIndex        =   8
      Top             =   4080
      Width           =   1275
   End
   Begin VB.CommandButton Command8 
      Caption         =   "后一条"
      Height          =   555
      Left            =   3120
      TabIndex        =   7
      Top             =   4080
      Width           =   1275
   End
   Begin VB.CommandButton Command9 
      Caption         =   "尾记录"
      Height          =   555
      Left            =   4380
      TabIndex        =   6
      Top             =   4080
      Width           =   1275
   End
   Begin VB.TextBox Text1 
      Height          =   315
      Left            =   1740
      TabIndex        =   5
      Text            =   "Text1"
      Top             =   1020
      Width           =   1995
   End
   Begin VB.TextBox Text2 
      Height          =   315
      Left            =   1740
      TabIndex        =   4
      Text            =   "Text2"
      Top             =   1440
      Width           =   1995
   End
   Begin VB.TextBox Text3 
      Height          =   315
      Left            =   1740
      TabIndex        =   3
      Text            =   "Text3"
      Top             =   1860
      Width           =   1995
   End
   Begin VB.TextBox Text4 
      Height          =   315
      Left            =   1740
      TabIndex        =   2
      Text            =   "Text4"
      Top             =   2340
      Width           =   1995
   End
   Begin VB.TextBox Text5 
      Height          =   315
      Left            =   1740
      TabIndex        =   1
      Text            =   "Text5"
      Top             =   2820
      Width           =   1995
   End
   Begin VB.TextBox Text6 
      Height          =   315
      Left            =   4980
      TabIndex        =   0
      Text            =   "Text6"
      Top             =   1500
      Width           =   1995
   End
   Begin VB.Label Label1 
      Caption         =   $"Form1.frx":0000
      Height          =   795
      Left            =   1020
      TabIndex        =   21
      Top             =   60
      Width           =   5415
   End
   Begin VB.Label Label2 
      AutoSize        =   -1  'True
      Caption         =   "作者编号:"
      Height          =   195
      Left            =   600
      TabIndex        =   20
      Top             =   1080
      Width           =   900
   End
   Begin VB.Label Label3 
      AutoSize        =   -1  'True
      Caption         =   "作者姓:"
      Height          =   195
      Left            =   600
      TabIndex        =   19
      Top             =   1500
      Width           =   720
   End
   Begin VB.Label Label4 
      AutoSize        =   -1  'True
      Caption         =   "作者电话:"
      Height          =   195
      Left            =   600
      TabIndex        =   18
      Top             =   1920
      Width           =   900
   End
   Begin VB.Label Label5 
      AutoSize        =   -1  'True
      Caption         =   "作者地址:"
      Height          =   195
      Left            =   600
      TabIndex        =   17
      Top             =   2400
      Width           =   900
   End
   Begin VB.Label Label6 
      AutoSize        =   -1  'True
      Caption         =   "是否出书:"
      Height          =   195
      Left            =   600
      TabIndex        =   16
      Top             =   2820
      Width           =   900
   End
   Begin VB.Label Label7 
      AutoSize        =   -1  'True
      Caption         =   "作者名:"
      Height          =   195
      Left            =   3840
      TabIndex        =   15
      Top             =   1560
      Width           =   720
   End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Private myConn As New ADODB.Connection
Private myRecord As New ADODB.Recordset


'添加按钮单击事件,表示增加记录
Private Sub Command1_Click()
    '调用RecordSet对象的AddNew方法
    myRecord.AddNew
    '进行按钮设置,同ADO控件编程,这里省略
    Text1.Text = ""
    Text2.Text = ""
    Text3.Text = ""
    Text4.Text = ""
    Text5.Text = ""
    Text6.Text = ""
    '在调用AddNew以后,文本框控件处于添加模式,因此
    '为了防止程序出错,需要屏蔽其他按钮的使用
    
    Command1.Enabled = False
    Command2.Enabled = False
    Command3.Enabled = False
    Command6.Enabled = False
    Command7.Enabled = False
    Command8.Enabled = False
    Command9.Enabled = False
    
    Command4.Enabled = True
    Command5.Enabled = True
End Sub

'删除按钮单击事件
Private Sub Command2_Click()
    '调用RecordSet对象的Delete方法删除数据
Dim Ans As Integer
    Ans = MsgBox("确定删除嘛?", vbOKCancel, "警告")
    If Ans = vbOK Then
        myRecord.Delete
        
    End If
        
    '显示数据
    ShowData
End Sub

'保存按钮单击事件
Private Sub Command4_Click()
'On Error Resume Next
    '保存数据,同ADO控件编程有些区别,这里需要通过编程来实现
    '作者编号
    '作者编号不能为空,用同样方法将一些非空约束的字段进行判断
    If Text1.Text = "" Then
        MsgBox "作者编号不能为空!"
        Text1.SetFocus
    Exit Sub
    End If
    
    '保存作者编号
    myRecord("au_id") = Text1.Text
    '保存作者姓名
    myRecord("au_lname") = Text2.Text
    '保存作者电话
    myRecord("phone") = Text3.Text
    '保存作者地址
    myRecord("address") = Text4.Text
    '记录作者是否出书
    myRecord("contract") = Text5.Text
    '记录作者名
    myRecord("au_fname") = Text6.Text
    '调用Recordset对象Update方法保存数据
    myRecord.Update
    
    '恢复其他控件的属性
    Command1.Enabled = True
    Command2.Enabled = True
    Command3.Enabled = True
    Command6.Enabled = True
    Command7.Enabled = True
    Command8.Enabled = True
    Command9.Enabled = True
    
    '同时使保存和取消按钮失效
    Command4.Enabled = False
    Command5.Enabled = False
    '显示数据
    ShowData
    
End Sub

Private Sub Command5_Click()
    '调用Recordset对象cancelUpdate方法取消数据保存
    myRecord.CancelUpdate
    myRecord.MoveFirst
    
    '恢复其他控件的属性
    Command1.Enabled = True
    Command2.Enabled = True
    Command3.Enabled = True
    Command6.Enabled = True
    Command7.Enabled = True
    Command8.Enabled = True
    Command9.Enabled = True
    
    '同时使保存和取消按钮失效
    Command4.Enabled = False
    Command5.Enabled = False
    
    '显示数据
    ShowData
End Sub

'首记录按钮单击事件
Private Sub Command6_Click()
    '调用MoveFirst移动
    myRecord.MoveFirst
    '显示记录
    ShowData
End Sub

'前一条按钮单击事件
Private Sub Command7_Click()
    '调用MovePrevious
    myRecord.MovePrevious
    If myRecord.BOF Then
       myRecord.MoveFirst
    End If
    '显示数据
    ShowData
End Sub

'后一条按钮单击事件
Private Sub Command8_Click()
    '调用MoveNext
    myRecord.MoveNext
    If myRecord.EOF Then
       myRecord.MoveLast
    End If
   '显示数据
   ShowData
    
End Sub

'尾记录按钮单击事件
Private Sub Command9_Click()
    '调用MoveLast
    myRecord.MoveLast
    '显示记录
    ShowData
End Sub

Private Sub Form_Load()
    '创建Connection对象实例
    Set myConn = New ADODB.Connection
    '设定ConnectionString属性连接数据库
    myConn.ConnectionString = "Provider=MSDASQL.1;Persist Security Info=False;Extended Properties=" & "DRIVER=SQL Server;SERVER=ZP03;UID=sa;APP=Microsoft Data Access Components;WSID=ZP03;DATABASE=pubs"
   ' "Provider=SQLOLEDB.1;Persist Security Info=False;User ID=sa;Initial Catalog=pubs;Data Source=localhost"
    myConn.Open
    '创建RecordSet对象实例
    Set myRecord = New ADODB.Recordset
    '打开RecordSet对象,其中authors是数据库的表名,也可以是SQL语句
    myRecord.Open "authors", myConn, adOpenDynamic, adLockOptimistic
    
   
    '使保存和取消按钮失效
    Command4.Enabled = False
    Command5.Enabled = False
    
    '显示数据
    ShowData
    
End Sub
'显示数据
Private Sub ShowData()
On Error Resume Next
    Text1.Text = myRecord.Fields("au_id").Value
    Text2.Text = myRecord.Fields("au_lname").Value
    Text3.Text = myRecord.Fields("phone")
    Text4.Text = myRecord.Fields("address")
    Text5.Text = myRecord.Fields("contract")
    Text6.Text = myRecord.Fields("au_fname")
End Sub

⌨️ 快捷键说明

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