📄 form1.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 + -