📄 9-2.frm
字号:
VERSION 5.00
Object = "{5E9E78A0-531B-11CF-91F6-C2863C385E30}#1.0#0"; "MSFLXGRD.OCX"
Begin VB.Form Form1
Caption = "DAO 数据访问"
ClientHeight = 3915
ClientLeft = 60
ClientTop = 345
ClientWidth = 5505
LinkTopic = "Form1"
ScaleHeight = 3915
ScaleWidth = 5505
StartUpPosition = 3 '窗口缺省
Begin VB.CommandButton Exit
Caption = "退出"
Height = 495
Left = 4080
TabIndex = 4
Top = 3240
Width = 1215
End
Begin VB.CommandButton Del
Caption = "删除"
Height = 495
Left = 2760
TabIndex = 3
Top = 3240
Width = 1215
End
Begin VB.CommandButton Add
Caption = "增加"
Height = 495
Left = 1440
TabIndex = 2
Top = 3240
Width = 1215
End
Begin MSFlexGridLib.MSFlexGrid Grid1
Height = 2895
Left = 120
TabIndex = 1
Top = 120
Width = 5295
_ExtentX = 9340
_ExtentY = 5106
_Version = 393216
Rows = 1
Cols = 4
FixedCols = 0
AllowUserResizing= 1
End
Begin VB.CommandButton Find
Caption = "查询"
Height = 495
Left = 120
TabIndex = 0
Top = 3240
Width = 1215
End
End
Attribute VB_Name = "Form1"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = False
Attribute VB_PredeclaredId = True
Attribute VB_Exposed = False
Option Explicit
'数据库工作空间
Dim rw As Workspace
'数据库对象
Dim rs As Database
'结果集
Dim rc As Recordset
'增加记录程序
Private Sub Add_Click()
Dim name As String
Dim sex As String
Dim arg As Integer
'输入姓名
'注意:字符串长度不能大于数据库字段长度
name = Left(InputBox("输入姓名", "输入", , 1000, 300), 20)
'姓名不能为空
If Len(name) = 0 Then
Exit Sub
End If
'输入性别
sex = Left(InputBox("输入性别", "输入", , 1000, 300), 2)
'输入年龄
arg = Val(InputBox("输入年龄", "输入", , 1000, 300))
rc.AddNew
'修改字段值
'注意:修改字段值必须在
'AddNew状态(执行AddNew方法后)或Edit状态
rc(0) = name
rc(1) = sex
rc(2) = arg
'保存新记录
rc.Update
End Sub
'修改数据程序
Private Sub Edit_Click()
Dim s_number As String
Dim number As Integer
Dim name As String
Dim sex As String
Dim age As Integer
'输入要修改的记录的记录号
s_number = (InputBox("输入记录号", "输入", , 1000, 300))
If Len(s_number) = 0 Then
Exit Sub
End If
number = Val(s_number)
rc.MoveLast
If number >= rc.RecordCount Or number < 0 Then
Exit Sub
End If
'移动指针到指定记录
rc.AbsolutePosition = number
'输入姓名
'注意:字符串长度不能大于数据库字段长度
name = Left(InputBox("输入姓名", "输入", rc(0), 1000, 300), 20)
'姓名称段不能为空
If Len(name) = 0 Then Exit Sub
'输入性别
sex = Left(InputBox("输入性别", "输入", rc(1), 1000, 300), 2)
'输入年龄
age = Val(InputBox("输入年龄", "输入", rc(2), 1000, 300))
'进入编辑模式开始修改
rc.Edit
rc(0) = name
rc(1) = sex
rc(2) = age
'保存修改
rc.Update
End Sub
'"退出"按钮处理程序
Private Sub Exit_Click()
Unload Me
End Sub
'显示数据记录
Private Sub Find_Click()
Dim i As Long
On Error Resume Next
'获得记录集最大记录数
rc.MoveLast
'将记录集指针移到开始位置
rc.MoveFirst
Grid1.Rows = rc.RecordCount + 1
For i = 1 To rc.RecordCount
Grid1.Row = i '设置行位置
Grid1.Col = 0 '设置为第一列
Grid1.Text = Str(i)
Grid1.Col = 1
Grid1.Text = rc!姓名
Grid1.Col = 2
Grid1.Text = rc!性别
Grid1.Col = 3
Grid1.Text = Str(rc!年龄)
rc.MoveNext
Next i
End Sub
'删除指定姓名的记录
Private Sub Del_Click()
Dim name As String
name = InputBox("输入要删除的姓名", "输入", , 1000, 300)
If Len(name) = 0 Then Exit Sub
name = rc(0).name & "='" & name & "'"
rc.FindFirst name
Do Until rc.NoMatch
rc.Delete
rc.FindNext name
Loop
End Sub
Private Sub Form_Load()
'以下语句用于打开DAO
'创建工作区
Set rw = CreateWorkspace("", "admin", "")
'打开数据库
Set rs = rw.OpenDatabase(App.Path + "\9.mdb")
'创建结果集
Set rc = rs.OpenRecordset("select * from Demo")
'设置网格宽度
Grid1.ColWidth(0) = 600
Grid1.ColWidth(1) = 2500
Grid1.ColWidth(2) = 1000
Grid1.ColWidth(3) = 1000
'设置字段名显示
Grid1.Row = 0
Grid1.Col = 0
Grid1.Text = " 序号"
Grid1.Col = 1
Grid1.Text = " 姓名"
Grid1.Col = 2
Grid1.Text = " 性别"
Grid1.Col = 3
Grid1.Text = " 年龄"
End Sub
Private Sub Form_Unload(Cancel As Integer)
'该子程序用于关闭DAO
rc.Close
rs.Close
rw.Close
End Sub
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -