Trong bài viết này tôi sẽ hướng dẫn bạn thực hiện kết nối từ VB.Net đến CSDL trong Access. Thực thi câu truy vấn để kiểm tra thông tin đăng nhập có chính xác hay không.
-
Tạo bảng dữ liệu trong Access:
tạo bảng tblUser có cấu trúc như sau: với trường User và Pass để lưu thông tin tài khoản và mật khẩu đăng nhập.
-
Tạo mới Form đăng nhập
a. Tạo mới Window Form: Chuột phải bên thanh Solution Explore chọn Add/Windows Form
b.Chọn Login Form từ danh sách các Form có sẵn -
Viết sự kiện cho Form đăng nhập
a.Thêm thư viện cho Form Login: Sử dụng gói System.Data.OleDb
Imports System.Data.OleDb
b. Khai báo biến: biến myconnection để thực hiện kết nối đến CSDL
Dim myConnection As OleDbConnection = New OleDbConnection Dim provider As String Dim dataFile As String Dim connString As String
c.Đoạn mã kết nối với CSDL:
provider: chọn phiên bản Access phù hợp hiện tại thường sử dụng Microsoft.ACE.OLEDB.12.0
dataFile: chọn đường dẫn đến file Accessprovider = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source =" dataFile = "C:\data.accdb" connString = provider & dataFile myConnection.ConnectionString = connString
e. Thưc hiện truy vấn đến file Access, lọc ra bản ghi trong bảng tblUser với User trùng với ô UsernameTextBox và Pass trùng với PasswordTextbox.
Dim cmd As OleDbCommand = New OleDbCommand("SELECT * FROM [tblUser] WHERE [User] = '" & UsernameTextBox.Text & "' AND [Pass] = '" & PasswordTextBox.Text & "'", myConnection) myConnection.Open() Dim dr As OleDbDataReader = cmd.ExecuteReader d. Sử dụng HasRows để kiểm tra có tìm được bản ghi nào phù hợp không. Nếu có bản ghi tức điền đúng tên đăng nhập và mật khẩu hàm HasRows sẽ trả về kết quả True,ngược lại nếu tên đăng nhập hoặc mật khẩu sai hàm HasRows sẽ trả về kết quả False
Dim dr As OleDbDataReader = cmd.ExecuteReader If dr.HasRows = True Then MsgBox("Success!") Else MsgBox("False") End If