devices.cls
来自「vb与access数据库的操作实例」· CLS 代码 · 共 174 行
CLS
174 行
VERSION 1.0 CLASS
BEGIN
MultiUse = -1 'True
Persistable = 0 'NotPersistable
DataBindingBehavior = 0 'vbNone
DataSourceBehavior = 0 'vbNone
MTSTransactionMode = 0 'NotAnMTSObject
END
Attribute VB_Name = "Devices"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
'1 Id 文本 长度 50 设备编号
'2 Name 文本 长度 50 设备名称
'3 Model 文本 长度 50 设备类型
'4 TypeId 数字 整型 设备分类
'5 Price 数字 整型 单价
'6 DCount 数字 整型 数量
'7 Unit 文本 长度 10 计量单位
'8 CreateDate 日期\时间 创建时间
'9 Poster 文本 长度 30 提交人
'10 Flag 数字 字节 标记:1-设备;2-配件
'11 Status 文本 10 状态:正常,分配,报废
Public Id As String
Public Name As String
Public Model As String
Public TypeId As Long
Public Price As Long
Public DCount As Long
Public Unit As String
Public CreateDate As String
Public Poster As String
Public Flag As Integer
Public Status As String
Public Sub Init()
Name = ""
Model = ""
TypeId = 0
Price = 0
DCount = 0
Unit = ""
CreateDate = ""
Poster = ""
Flag = 1
Status = ""
End Sub
'删除设备信息
Public Sub Delete(ByVal TmpsId As String)
SqlStmt = "DELETE FROM Device WHERE Id='" + Trim(TmpsId) + "'"
SQLExt (SqlStmt)
End Sub
Public Function In_DB(ByVal TmpsId As String) As Boolean
Dim rs As New ADODB.Recordset
SqlStmt = "SELECT * FROM Device WHERE Id='" + Trim(TmpsId) + "'"
Set rs = QueryExt(SqlStmt)
If rs.EOF = True Then
In_DB = False
Else
In_DB = True
End If
End Function
Public Function GetInfo(ByVal TmpsId As String) As Boolean
Dim rs As New ADODB.Recordset
'设置SELECT语句,读取编号为TmpId的记录
SqlStmt = "SELECT * FROM Device WHERE Id='" + Trim(TmpsId) + "'"
'将结果集读取到rs中
Set rs = QueryExt(SqlStmt)
If rs.EOF Then
'如果结果集为空,则初始化
Init
GetInfo = False
Else
'将结果集中的数据赋值到成员变量中
If IsNull(rs.Fields(0)) Then
Id = ""
Else
Id = rs.Fields(0)
End If
If IsNull(rs.Fields(1)) Then
Name = ""
Else
Name = rs.Fields(1)
End If
If IsNull(rs.Fields(2)) Then
Model = ""
Else
Model = rs.Fields(2)
End If
If IsNull(rs.Fields(3)) Then
TypeId = 0
Else
TypeId = rs.Fields(3)
End If
If IsNull(rs.Fields(4)) Then
Price = 0
Else
Price = rs.Fields(4)
End If
If IsNull(rs.Fields(5)) Then
DCount = 0
Else
DCount = rs.Fields(5)
End If
If IsNull(rs.Fields(6)) Then
Unit = ""
Else
Unit = rs.Fields(6)
End If
If IsNull(rs.Fields(7)) Then
CreateDate = ""
Else
CreateDate = rs.Fields(7)
End If
If IsNull(rs.Fields(8)) Then
Poster = ""
Else
Poster = rs.Fields(8)
End If
If IsNull(rs.Fields(9)) Then
Flag = 1
Else
Flag = rs.Fields(9)
End If
If IsNull(rs.Fields(10)) Then
Status = ""
Else
Status = rs.Fields(10)
End If
GetInfo = True
End If
End Function
'插入分类
Public Sub Insert()
SqlStmt = "INSERT INTO Device(Id,Name,Model,TypeId,Price,DCount," & _
"Unit,CreateDate,Poster,Flag,Status)" & _
"VALUES('" + Trim(Id) + "','" + Trim(Name) + "','" & _
Trim(Model) + "'," + Trim(TypeId) + "," + Trim(Price) + "," & _
Trim(DCount) + ",'" + Trim(Unit) + "','" + Trim(CreateDate) + "','" & _
Trim(Poster) + "'," + Trim(Flag) + ",'" + Trim(Status) + "')"
SQLExt (SqlStmt)
End Sub
'更新数据
Public Sub Update(ByVal TmpsId As String)
SqlStmt = "UPDATE Device SET Name='" + Trim(Name) & _
"',Model='" + Trim(Model) + "',TypeId=" + Trim(TypeId) + "," & _
"Price=" + Trim(Price) + ",DCount=" + Trim(DCount) + ",Unit='" & _
Trim(Unit) + "',CreateDate='" + Trim(CreateDate) + "',Poster='" & _
Trim(Poster) + "' Where Id='" + Trim(TmpsId) + "'"
SQLExt (SqlStmt)
End Sub
'更新设备状态
Public Sub UpdateStatus(ByVal TmpsId As String)
SqlStmt = "UPDATE Device SET Status='" + Trim(Status) + "'" & _
" Where Id='" + Trim(TmpsId) + "'"
SQLExt (SqlStmt)
End Sub
'更新配件数量
Public Sub UpdateCount(ByVal TmpsId As String, ByVal TmpCount As Integer)
SqlStmt = "UPDATE Device SET DCount=DCount-" + Trim(TmpCount) & _
" Where Id='" + Trim(TmpsId) + "'"
SQLExt (SqlStmt)
End Sub
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?