Đáp:
Đáp: Các file tài liệu Microsoft Office (Word, Excel, Access...) đều có tính chất hỗ trợ việc hiệu chỉnh nội dung nhanh chóng. Ý tưởng cơ bản là mỗi khi người dùng (hay ứng dụng) hiệu chỉnh nội dung của thành phần tài liệu nào thành nội dung mới, Office không cập nhật lại toàn bộ file tài liệu mà chỉ ghi thêm thông tin mới ở đâu đó trong file (thường ở cuối file) rồi cập nhật vùng link của thành phần cần cập nhật về vị trí mới, nội dung cũ của thành phần được cập nhật vẫn còn trên file nhưng không được dùng nữa (nó trở thành rác). Như vậy, sau 1 thời gian hiệu chỉnh nội dung tài liệu, file tài liệu sẽ lớn dần lên. Nếu muốn dọn dẹp các thông tin cũ dư thừa trên file Access, bạn có thể thao tác thủ công thông qua việc chọn menu Tools.Database Utilities.Compact and Repair Database.
Nếu muốn thực hiện việc dọn dẹp tự động bằng đoạn code VB 6.0, bạn có thể tiến hành các thao tác sau:
- chạy VB, tạo mới hay mở lại Project VB mà bạn định viết code dọn dẹp database Access.
- chọn menu Projects.References, khi cửa sổ References hiển thị, bạn duyệt tìm và chọn hàng "Microsoft Jet and Replication Objects X.X library, với X.X >= 2.1 rồi "add" nó vào Project hiện hành.
- viết đoạn code VB sau ở vị trí thích hợp trong module thích hợp của Project hiện hành:
'khai báo biến đối tượng
Dim jro As jro.JetEngine
'tạo đối tượng JetEngine
Set jro = New jro.JetEngine
'gọi hàm CompactDatabase để dọn dẹp database
jro.CompactDatabase "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\Olddata.mdb", _
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=c:\\Newdata.mdb;Jet OLEDB:Engine Type=4"