Là một thư viện chuyên xử lý về cơ sở dữ liệu được Microsoft phát triển
Trong môi trường VBA (Visual Basic for Applications), Jet Database Engine được nhúng vào ứng dụng Access cho phép lập trình viên thao tác với các Table, Query bằng lệnh VBA đơn giản và nhanh chóng thông qua các đối tượng như DAO (Data Access Objects) hoặc ADO (ActiveX Data Objects).
- DAO (Data Access Objects) ra đời trong phiên bản Access 1.0 , chỉ dùng được trên Access.
- ADO (ActiveX Data Objects) ra đời sau nhiều chức năng hơn, làm việc với OLE DB Provider và có thể truy cập nhiều loại cơ sở dữ liệu khác nhau, như SQL Server, Oracle, và các nguồn dữ liệu ngoài Access.
Xử lý lưu trữ và truy xuất dữ liệu từ các tệp cơ sở dữ liệu (.mdb hoặc .accdb).
Xử lý các câu lệnh SQL và tối ưu hóa truy vấn.
Kết nối với các ứng dụng thông qua DAO hoặc ADO.
Tạo các bảng, quan hệ (relationships), và các đối tượng cơ sở dữ liệu khác.
Hỗ trợ đầy đủ các lệnh SQL như SELECT, INSERT, UPDATE, DELETE.
Đảm bảo tính toàn vẹn dữ liệu khi có nhiều thao tác đồng thời.
Cho phép lập trình viên sử dụng SQL và thao tác dữ liệu trực tiếp trong các ứng dụng Office (như Access, Excel, Word).
DAO là cách phổ biến để làm việc với Jet Database trong VBA.
Ví dụ: Kết nối và truy vấn cơ sở dữ liệu Access:
Dim db As DAO.Database
Dim rs As DAO.Recordset
Dim sql As String
' Kết nối cơ sở dữ liệu
Set db = OpenDatabase("C:\path\to\your_database.mdb")
' Viết truy vấn SQL
sql = "SELECT * FROM YourTable"
' Mở recordset
Set rs = db.OpenRecordset(sql)
' Duyệt qua dữ liệu
Do While Not rs.EOF
Debug.Print rs!YourField
rs.MoveNext
Loop
' Đóng kết nối
rs.Close
db.Close
Set rs = Nothing
Set db = Nothing
ADO cung cấp cách tiếp cận linh hoạt hơn và có thể kết nối nhiều loại cơ sở dữ liệu khác nhau, bao gồm cả Jet.
Ví dụ: Kết nối và truy vấn bằng ADO:
Dim cn As Object
Dim rs As Object
Dim sql As String
' Tạo đối tượng kết nối
Set cn = CreateObject("ADODB.Connection")
Set rs = CreateObject("ADODB.Recordset")
' Kết nối cơ sở dữ liệu
cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\path\to\your_database.mdb;"
' Viết truy vấn SQL
sql = "SELECT * FROM YourTable"
' Thực hiện truy vấn
Set rs = cn.Execute(sql)
' Duyệt qua dữ liệu
Do While Not rs.EOF
Debug.Print rs.Fields("YourField").Value
rs.MoveNext
Loop
' Đóng kết nối
rs.Close
cn.Close
Set rs = Nothing
Set cn = Nothing
Tự động hóa báo cáo: Kết xuất dữ liệu từ Access vào Excel hoặc Word.
Quản lý dữ liệu nội bộ: Lập trình các form, report, và xử lý dữ liệu trong Access.
Kết nối dữ liệu đa nguồn: Liên kết và xử lý dữ liệu từ các nguồn khác nhau trong một ứng dụng VBA.
Phiên bản Jet: Jet 4.0 là phiên bản cuối cùng trước khi bị thay thế bởi ACE (Access Database Engine). Nếu sử dụng các tệp .accdb, cần dùng ACE.
Bảo mật: Jet không hỗ trợ bảo mật cấp độ cao, do đó không nên dùng cho các ứng dụng yêu cầu bảo mật cao.
Khả năng mở rộng: Jet thích hợp cho các ứng dụng nhỏ hoặc vừa. Với dữ liệu lớn hoặc nhiều người dùng, nên cân nhắc SQL Server hoặc các hệ quản trị cơ sở dữ liệu khác.
Tìm kiếm:
Jet Database Engine trong VBA là gì?