====================================
ユニバーサル
========== ==========================
データベースに接続します (接続データベース文字列を結合して関数を呼び出すだけです):
Dim Con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ATM.mdb" Dim connConnection As OleDb.OleDbConnection = New OleDb.OleDbConnection connConnection.ConnectionString = Con connConnection.Open()
ユーザー名を確認してくださいとパスワード (インターフェイスに入力されたユーザー名とパスワードを取得し、データベース内で照合するだけです。見つかった場合はパスします):
Private Function UserIsValid() As Boolean '连接数据库 Dim Con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ATM.mdb" Dim connConnection As OleDb.OleDbConnection = New OleDb.OleDbConnection connConnection.ConnectionString = Con connConnection.Open()
'验证一下用户名密码是否存在 Dim strSql As String = "select * from AccountInfo where AccountNo = '" & _ Trim(TextBox1.Text) & "' and Password = '" & Trim(TextBox2.Text) & "'" Dim connCommand As OleDb.OleDbCommand = New OleDb.OleDbCommand(strSql, connConnection) Dim myReader As OleDb.OleDbDataReader = connCommand.ExecuteReader '如果有数据 If myReader.HasRows Then myReader.Read() '读一行数据到reader里面 If Trim(TextBox1.Text) = myReader(1) And Trim(TextBox2.Text) = myReader(2) Then connConnection.Close() Return True Else connConnection.Close() Return False End If End If connConnection.Close() '没数据直接返回错误 Return False End Function
終了 (実際には、開いているウィンドウをすべて非表示にし、ログイン ウィンドウを表示することを意味します):
For Each f As Form In Application.OpenForms f.Hide() frmLogin.Show() Next
===========================================
お客様
======= === ===========================
出金:
'连接数据库 Dim Con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ATM.mdb" Dim connConnection As OleDb.OleDbConnection = New OleDb.OleDbConnection connConnection.ConnectionString = Con connConnection.Open() '修改金额(存钱) Dim sql As String = "update AccountInfo set Balance = Balance + " + TextBox1.Text + " where AccountNo = '" + frmLogin.TextBox1.Text + "'" Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(sql, connConnection) cmd.ExecuteNonQuery() '记录操作日志 sql = "insert into AccountAct (AccountNo,Lastopt,Amount) values ('" & Trim(frmLogin.TextBox1.Text) & "','" & Trim(DateTime.Now.ToString()) & "', " & CType(TextBox1.Text, Double) & ")" Dim cmd2 As OleDb.OleDbCommand = New OleDb.OleDbCommand(sql, connConnection) cmd2.ExecuteNonQuery() connConnection.Close()
入金:
'连接数据库 Dim Con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ATM.mdb" Dim connConnection As OleDb.OleDbConnection = New OleDb.OleDbConnection connConnection.ConnectionString = Con connConnection.Open() '修改金额(取钱) Dim sql As String = "update AccountInfo set Balance = Balance - " + TextBox2.Text + " where AccountNo = '" + frmLogin.TextBox1.Text + "'" Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(sql, connConnection) cmd.ExecuteNonQuery() '记录操作日志 sql = "insert into AccountAct (AccountNo,Lastopt,Amount) values ('" & Trim(frmLogin.TextBox1.Text) & "','" & Trim(DateTime.Now.ToString()) & "', " & CType(TextBox1.Text, Integer) & ")" cmd = New OleDb.OleDbCommand(sql, connConnection) cmd.ExecuteNonQuery() connConnection.Close()
口座問い合わせ:
'连接数据库 Dim Con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ATM.mdb" Dim connConnection As OleDb.OleDbConnection = New OleDb.OleDbConnection connConnection.ConnectionString = Con connConnection.Open() Dim sql As String = "select Balance from AccountInfo where AccountNo = '" + frmLogin.TextBox1.Text + "'" Dim cmd As OleDb.OleDbCommand = New OleDb.OleDbCommand(sql, connConnection) Dim myReader As OleDb.OleDbDataReader = cmd.ExecuteReader If myReader.HasRows Then myReader.Read() Label1.Text = myReader(0) Else MessageBox.Show("未找到账户信息") End If connConnection.Close()
=== ================================
管理者
============ == ====================
操作ログの記録:
sql = "insert into AccountAct (AccountNo,Lastopt,Amount) values ('" & Trim(frmLogin.TextBox1.Text) & "','" & Trim(DateTime.Now.ToString()) & "', " & CType(TextBox1.Text, Integer) & ")" cmd = New OleDb.OleDbCommand(sql, connConnection) cmd.ExecuteNonQuery() connConnection.Close()
すべての操作ログの表示:
'连接数据库 Dim Con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ATM.mdb" Dim connConnection As OleDb.OleDbConnection = New OleDb.OleDbConnection connConnection.ConnectionString = Con connConnection.Open() '把查询的数据取出来放到data set Dim strSql As String = "select * from AccountAct" Dim myDataSet As DataSet = New DataSet() Dim myAdapter As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter(strSql, connConnection) myAdapter.Fill(myDataSet, "AccountAct") connConnection.Close() '把数据从dataset中取出来显示在控件上() DataGridView1.DataSource = myDataSet.Tables(0) DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
すべてのユーザーアカウントの表示
'连接数据库 Dim Con As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source= ATM.mdb" Dim connConnection As OleDb.OleDbConnection = New OleDb.OleDbConnection connConnection.ConnectionString = Con connConnection.Open() '把查询的数据取出来放到data set Dim strSql As String = "select * from AccountInfo" Dim myDataSet As DataSet = New DataSet() Dim myAdapter As OleDb.OleDbDataAdapter = New OleDb.OleDbDataAdapter(strSql, connConnection) myAdapter.Fill(myDataSet, "AccountInfo") connConnection.Close() '把数据从dataset中取出来显示在控件上() DataGridView1.DataSource = myDataSet.Tables(0) DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells
上記これは、VB 操作 ACCESS の演習例 -- ATM 現金自動預け払い機のコード スニペット コンテンツです。その他の関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。