change.cls

来自「vb+sql学籍管理系统」· CLS 代码 · 共 136 行

CLS
136
字号
VERSION 1.0 CLASS
BEGIN
  MultiUse = -1  'True
  Persistable = 0  'NotPersistable
  DataBindingBehavior = 0  'vbNone
  DataSourceBehavior  = 0  'vbNone
  MTSTransactionMode  = 0  'NotAnMTSObject
END
Attribute VB_Name = "Change"
Attribute VB_GlobalNameSpace = False
Attribute VB_Creatable = True
Attribute VB_PredeclaredId = False
Attribute VB_Exposed = False
Public ChangeId As Long
Public Student_Id As Long
Public ChangeType As Integer
Public ChangeDate As String
Public OriClass As Long
Public NewSchool As String
Public NewClass As Long
Public Reason As String
Public Memo As String

Public Sub Init()
  ChangeId = 0
  Student_Id = 0
  ChangeType = 0
  ChangeDate = ""
  OriClass = 0
  NewSchool = 0
  NewClass = 0
  Reason = 0
  Memo = 0
End Sub



'删除单个数据
Public Sub DeleteById(ByVal TmpId As Long)
  SqlStmt = "DELETE FROM Change WHERE ChangeId=" + Trim(Str(TmpId))
  SQLExt (SqlStmt)
End Sub

'删除指定学生的所有数据
Public Sub DeleteByStudent(ByVal TmpStudentId As Long)
  SqlStmt = "DELETE FROM Change WHERE Student_Id=" + Trim(Str(TmpStudentId))
  SQLExt (SqlStmt)
End Sub

Public Function GetInfo(ByVal TmpId As Long) As Boolean
  If TmpId <= 0 Then
    GetInfo = False
    Init
    Exit Function
  End If
  Dim rs As New ADODB.Recordset
  ChangeId = TmpId

  SqlStmt = "SELECT * FROM Change WHERE ChangeId=" + Trim(TmpId)
  Set rs = QueryExt(SqlStmt)
  If rs.EOF Then
    GetInfo = False
    Init
    Exit Function
  Else
   
    Student_Id = rs.Fields(1)
    
    ChangeType = rs.Fields(2)
    
    ChangeDate = Trim(rs.Fields(3))

    OriClass = rs.Fields(4)

    NewSchool = Trim(rs.Fields(5))
    
    NewClass = rs.Fields(6)
    
    If IsNull(rs.Fields(7)) Then
      Reason = ""
    Else
      Reason = Trim(rs.Fields(7))
    End If
    
    If IsNull(rs.Fields(8)) Then
      Memo = ""
    Else
      Memo = Trim(rs.Fields(8))
    End If
  
  End If
  GetInfo = True
  rs.Close
End Function
Public Function GetNewId() As Long
  Dim TmpId As Long
  Dim rs As New ADODB.Recordset
  '设置要执行的SQL语句,取当前最大的记录编号
  SqlStmt = "SELECT MAX(ChangeId) FROM Change"
  '执行SQL语句
  Set rs = QueryExt(SqlStmt)
  '读取SELECT语句返回的查询结果
  If IsNull(rs.Fields(0)) Then
    GetNewId = 1
  Else
    GetNewId = rs.Fields(0) + 1
  End If
  
  rs.Close
End Function

Public Function Insert() As Long
  Dim Change_Id As Long
  '生成新的编号
  Change_Id = GetNewId
  'INSERT语句
  SqlStmt = "INSERT INTO Change (ChangeId,Student_Id, ChangeType, ChangeDate, OriClass," _
     + " NewSchool, NewClass, Reason, Memo) Values('" + Trim(Change_Id) + "','" + Trim(Student_Id) _
     + "','" + Trim(ChangeType) + "','" + Trim(ChangeDate) + "'," + Trim(OriClass) _
     + ",'" + Trim(NewSchool) + "'," + Trim(Str(NewClass)) + ",'" + Trim(Reason) _
     + "','" + Trim(Memo) + "')"
  '执行INSERT语句
  SQLExt (SqlStmt)
  Insert = Chande_Id
End Function

Public Sub Update(ByVal TmpId As Long)
  'UPDATE语句
  SqlStmt = "Update Change Set Student_Id=" + Trim(Student_Id) + ", ChangeType=" _
          + Trim(ChangeType) + ", ChangeDate='" + Trim(ChangeDate) + "', NewSchool='" _
          + Trim(NewSchool) + "',NewClass=" + Trim(NewClass) + ",Reason='" + Trim(Reason) _
          + "',Memo='" + Trim(Memo) + "' WHERE ChangeId=" + Trim(TmpId)
  '执行UPDATE语句
  SQLExt (SqlStmt)
End Sub

⌨️ 快捷键说明

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