📄 住宿统计1.vb
字号:
Public Class 住宿统计1
Inherits System.Windows.Forms.Form
#Region " Windows 窗体设计器生成的代码 "
Public Sub New()
MyBase.New()
'该调用是 Windows 窗体设计器所必需的。
InitializeComponent()
'在 InitializeComponent() 调用之后添加任何初始化
End Sub
'窗体重写 dispose 以清理组件列表。
Protected Overloads Overrides Sub Dispose(ByVal disposing As Boolean)
If disposing Then
If Not (components Is Nothing) Then
components.Dispose()
End If
End If
MyBase.Dispose(disposing)
End Sub
'Windows 窗体设计器所必需的
Private components As System.ComponentModel.IContainer
'注意: 以下过程是 Windows 窗体设计器所必需的
'可以使用 Windows 窗体设计器修改此过程。
'不要使用代码编辑器修改它。
Friend WithEvents Df1 As 学生公寓管理系统.Df
Friend WithEvents OleDbDA As System.Data.OleDb.OleDbDataAdapter
Friend WithEvents OleDbCom As System.Data.OleDb.OleDbCommand
Friend WithEvents Label1 As System.Windows.Forms.Label
Friend WithEvents OleDbSelectCommand1 As System.Data.OleDb.OleDbCommand
Friend WithEvents OleDbInsertCommand1 As System.Data.OleDb.OleDbCommand
Friend WithEvents OleDbUpdateCommand1 As System.Data.OleDb.OleDbCommand
Friend WithEvents OleDbDeleteCommand1 As System.Data.OleDb.OleDbCommand
Friend WithEvents OleDbCon As System.Data.OleDb.OleDbConnection
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
Me.OleDbDA = New System.Data.OleDb.OleDbDataAdapter
Me.Df1 = New 学生公寓管理系统.Df
Me.OleDbCom = New System.Data.OleDb.OleDbCommand
Me.Label1 = New System.Windows.Forms.Label
Me.OleDbSelectCommand1 = New System.Data.OleDb.OleDbCommand
Me.OleDbInsertCommand1 = New System.Data.OleDb.OleDbCommand
Me.OleDbUpdateCommand1 = New System.Data.OleDb.OleDbCommand
Me.OleDbDeleteCommand1 = New System.Data.OleDb.OleDbCommand
Me.OleDbCon = New System.Data.OleDb.OleDbConnection
CType(Me.Df1, System.ComponentModel.ISupportInitialize).BeginInit()
Me.SuspendLayout()
'
'OleDbDA
'
Me.OleDbDA.DeleteCommand = Me.OleDbDeleteCommand1
Me.OleDbDA.InsertCommand = Me.OleDbInsertCommand1
Me.OleDbDA.SelectCommand = Me.OleDbSelectCommand1
Me.OleDbDA.TableMappings.AddRange(New System.Data.Common.DataTableMapping() {New System.Data.Common.DataTableMapping("Table", "已住床位", New System.Data.Common.DataColumnMapping() {New System.Data.Common.DataColumnMapping("栋号", "栋号"), New System.Data.Common.DataColumnMapping("房号", "房号"), New System.Data.Common.DataColumnMapping("已住床位", "已住床位")})})
Me.OleDbDA.UpdateCommand = Me.OleDbUpdateCommand1
'
'Df1
'
Me.Df1.DataSetName = "Df"
Me.Df1.Locale = New System.Globalization.CultureInfo("zh-CN")
'
'Label1
'
Me.Label1.AutoSize = True
Me.Label1.Font = New System.Drawing.Font("宋体", 14.25!, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, CType(134, Byte))
Me.Label1.ForeColor = System.Drawing.SystemColors.ActiveCaption
Me.Label1.Location = New System.Drawing.Point(16, 8)
Me.Label1.Name = "Label1"
Me.Label1.Size = New System.Drawing.Size(271, 25)
Me.Label1.TabIndex = 0
Me.Label1.Text = "系统正在处理数据请稍等1……"
'
'OleDbSelectCommand1
'
Me.OleDbSelectCommand1.CommandText = "SELECT 栋号, 房号, 已住床位 FROM 已住床位"
Me.OleDbSelectCommand1.Connection = Me.OleDbCon
'
'OleDbInsertCommand1
'
Me.OleDbInsertCommand1.CommandText = "INSERT INTO 已住床位(栋号, 房号, 已住床位) VALUES (?, ?, ?)"
Me.OleDbInsertCommand1.Connection = Me.OleDbCon
Me.OleDbInsertCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("栋号", System.Data.OleDb.OleDbType.VarWChar, 50, "栋号"))
Me.OleDbInsertCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("房号", System.Data.OleDb.OleDbType.VarWChar, 50, "房号"))
Me.OleDbInsertCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("已住床位", System.Data.OleDb.OleDbType.VarWChar, 50, "已住床位"))
'
'OleDbUpdateCommand1
'
Me.OleDbUpdateCommand1.CommandText = "UPDATE 已住床位 SET 栋号 = ?, 房号 = ?, 已住床位 = ? WHERE (房号 = ?) AND (栋号 = ?) AND (已住床位 = " & _
"? OR ? IS NULL AND 已住床位 IS NULL)"
Me.OleDbUpdateCommand1.Connection = Me.OleDbCon
Me.OleDbUpdateCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("栋号", System.Data.OleDb.OleDbType.VarWChar, 50, "栋号"))
Me.OleDbUpdateCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("房号", System.Data.OleDb.OleDbType.VarWChar, 50, "房号"))
Me.OleDbUpdateCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("已住床位", System.Data.OleDb.OleDbType.VarWChar, 50, "已住床位"))
Me.OleDbUpdateCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("Original_房号", System.Data.OleDb.OleDbType.VarWChar, 50, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "房号", System.Data.DataRowVersion.Original, Nothing))
Me.OleDbUpdateCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("Original_栋号", System.Data.OleDb.OleDbType.VarWChar, 50, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "栋号", System.Data.DataRowVersion.Original, Nothing))
Me.OleDbUpdateCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("Original_已住床位", System.Data.OleDb.OleDbType.VarWChar, 50, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "已住床位", System.Data.DataRowVersion.Original, Nothing))
Me.OleDbUpdateCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("Original_已住床位1", System.Data.OleDb.OleDbType.VarWChar, 50, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "已住床位", System.Data.DataRowVersion.Original, Nothing))
'
'OleDbDeleteCommand1
'
Me.OleDbDeleteCommand1.CommandText = "DELETE FROM 已住床位 WHERE (房号 = ?) AND (栋号 = ?) AND (已住床位 = ? OR ? IS NULL AND 已住床位 " & _
"IS NULL)"
Me.OleDbDeleteCommand1.Connection = Me.OleDbCon
Me.OleDbDeleteCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("Original_房号", System.Data.OleDb.OleDbType.VarWChar, 50, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "房号", System.Data.DataRowVersion.Original, Nothing))
Me.OleDbDeleteCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("Original_栋号", System.Data.OleDb.OleDbType.VarWChar, 50, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "栋号", System.Data.DataRowVersion.Original, Nothing))
Me.OleDbDeleteCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("Original_已住床位", System.Data.OleDb.OleDbType.VarWChar, 50, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "已住床位", System.Data.DataRowVersion.Original, Nothing))
Me.OleDbDeleteCommand1.Parameters.Add(New System.Data.OleDb.OleDbParameter("Original_已住床位1", System.Data.OleDb.OleDbType.VarWChar, 50, System.Data.ParameterDirection.Input, False, CType(0, Byte), CType(0, Byte), "已住床位", System.Data.DataRowVersion.Original, Nothing))
'
'OleDbCon
'
Me.OleDbCon.ConnectionString = "Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Registry Path=;Jet OLEDB:Database L" & _
"ocking Mode=1;Data Source=""学生公寓管理系统.mdb"";Jet OLEDB:Engine Type=5;Provider=""Micro" & _
"soft.Jet.OLEDB.4.0"";Jet OLEDB:System database=;Jet OLEDB:SFP=False;persist secur" & _
"ity info=False;Extended Properties=;Mode=Share Deny None;Jet OLEDB:Encrypt Datab" & _
"ase=False;Jet OLEDB:Create System Database=False;Jet OLEDB:Don't Copy Locale on " & _
"Compact=False;Jet OLEDB:Compact Without Replica Repair=False;User ID=Admin;Jet O" & _
"LEDB:Global Bulk Transactions=1"
'
'住宿统计1
'
Me.AutoScaleBaseSize = New System.Drawing.Size(6, 14)
Me.ClientSize = New System.Drawing.Size(272, 40)
Me.Controls.Add(Me.Label1)
Me.ForeColor = System.Drawing.SystemColors.GrayText
Me.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None
Me.MaximizeBox = False
Me.MinimizeBox = False
Me.Name = "住宿统计1"
Me.ShowInTaskbar = False
Me.StartPosition = System.Windows.Forms.FormStartPosition.CenterScreen
Me.Text = "住宿统计1"
Me.TopMost = True
CType(Me.Df1, System.ComponentModel.ISupportInitialize).EndInit()
Me.ResumeLayout(False)
End Sub
#End Region
Private Sub 住宿统计1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Try
OleDbCon.ConnectionString = "Provider=Microsoft.Jet.Oledb.4.0;Data Source=学生公寓管理系统.mdb"
OleDbCon.Open()
OleDbCom.Connection = OleDbCon
OleDbCom.CommandType = CommandType.TableDirect
OleDbCom.CommandText = "已住床位"
OleDbDA.SelectCommand = OleDbCom
OleDbDA.Fill(Df1)
Df1.Tables(0).TableName = "已住床位"
OleDbCom.CommandType = CommandType.Text
'从住宿登记表中统计已住人数写入已住床位中
Dim Conn As New System.Data.OleDb.OleDbConnection
Dim Cmd As New System.Data.OleDb.OleDbCommand
Dim DataReader As System.Data.OleDb.OleDbDataReader
Try
Conn.ConnectionString = "Provider=Microsoft.Jet.Oledb.4.0;Data Source=学生公寓管理系统.mdb"
Conn.Open()
Cmd.CommandText = "Select 栋号,房号,count(*) As 已住床位 from 住宿登记 Group by 栋号,房号"
Cmd.Connection = Conn
DataReader = Cmd.ExecuteReader
While DataReader.Read()
Dim a, b, c As String
a = DataReader.Item(0)
b = DataReader.Item(1)
c = DataReader.Item(2)
'把栋号,房号,已住床位 写入到已住床位表中
OleDbCom.CommandText = "Insert Into 已住床位 values(?,?,?)"
OleDbCom.Parameters.Clear()
OleDbCom.Parameters.Add("a", a)
OleDbCom.Parameters.Add("b", b)
OleDbCom.Parameters.Add("c", c)
OleDbDA.InsertCommand = OleDbCom
Dim DRow As DataRow
DRow = Df1.Tables("已住床位").NewRow
DRow.Item(0) = a
DRow.Item(1) = b
DRow.Item(2) = c
Df1.Tables("已住床位").Rows.Add(DRow)
OleDbDA.Update(Df1, "已住床位")
End While
DataReader.Close()
Conn.Close()
Catch ex As Exception
MsgBox(ex.Message)
End Try
Catch ex As Exception
MsgBox(ex.Message)
End Try
'析构连接对象,命令对象,数据对象
OleDbCon.Dispose()
OleDbCom.Dispose()
OleDbDA.Dispose()
Df1.Dispose()
Me.Close()
End Sub
Private Sub 住宿统计1_VisibleChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.VisibleChanged
Me.Hide()
End Sub
Private Sub Label1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Label1.Click
End Sub
End Class
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -