Nếu bạn từng làm việc với Microsoft Access 2010 trong một thời gian dài, có lẽ đã gặp tình huống này: ban đầu database chạy rất nhanh. Mọi thứ mở ra gần như ngay lập tức. Nhưng sau vài tháng sử dụng, file bắt đầu nặng dần. Mở form lâu hơn. Query chạy chậm hơn. Đôi khi còn xuất hiện những lỗi khá… khó hiểu.
Nhiều người nghĩ vấn đề nằm ở máy tính hoặc mạng. Nhưng thật ra, đôi khi chỉ đơn giản là database cần được “dọn dẹp”.
Đó chính là lúc tính năng Compact and Repair trong Access phát huy tác dụng.
Nghe có vẻ kỹ thuật, nhưng bản chất của nó khá giống việc dọn rác trong máy tính. Access sẽ tái tổ chức dữ liệu bên trong file, loại bỏ phần dư thừa và sửa những lỗi nhỏ có thể xảy ra trong quá trình sử dụng.
Một thao tác đơn giản thôi. Nhưng hiệu quả đôi khi khá bất ngờ.
Compact and Repair là gì?
Trong quá trình làm việc với Access, dữ liệu liên tục được thêm, sửa, rồi xóa. Nhưng khi bạn xóa bản ghi trong bảng, dung lượng file không tự động giảm ngay.
Access chỉ đánh dấu vùng dữ liệu đó là “đã xóa”. Phần dung lượng vẫn nằm trong file.
Lâu dần, file database sẽ chứa nhiều khoảng trống không cần thiết. Điều này khiến dung lượng tăng lên và hiệu suất giảm xuống.
Chức năng Compact sẽ tái tổ chức file, loại bỏ khoảng trống dư thừa và giảm kích thước file database.
Còn Repair thì cố gắng sửa các lỗi nhỏ có thể phát sinh trong cấu trúc file.
Hai việc này thường được thực hiện cùng nhau. Vì vậy Access gọi chung là Compact and Repair Database.

Khi nào nên dùng Compact and Repair?
Không phải lúc nào cũng cần chạy tính năng này. Nhưng có một số dấu hiệu khá rõ ràng.
Ví dụ:
-
File Access ngày càng lớn dù dữ liệu không tăng nhiều
-
Database mở chậm hơn bình thường
-
Xuất hiện lỗi lạ khi chạy form hoặc query
-
Nhiều người dùng cùng làm việc trên database
Trong những trường hợp như vậy, chạy Compact and Repair thường giúp cải thiện hiệu suất.
Một số người quản trị database thậm chí còn chạy thao tác này định kỳ – ví dụ mỗi tuần hoặc mỗi tháng.
Không phải vì database đang lỗi. Mà đơn giản là để giữ cho hệ thống luôn gọn gàng.
Cách thực hiện Compact and Repair trong Access 2010
Access 2010 có sẵn công cụ để thực hiện việc này. Không cần cài thêm gì cả.
Các bước khá đơn giản.
Bước 1: Mở database trong Microsoft Access 2010.
Bước 2: Nhấp vào tab File trên thanh ribbon.
Bước 3: Chọn Info.
Ở khu vực bên phải, bạn sẽ thấy nút Compact and Repair Database.
Bước 4: Nhấn nút này.
Access sẽ bắt đầu quá trình dọn dẹp và sửa lỗi. Thời gian thực hiện phụ thuộc vào kích thước database.
Với file nhỏ, quá trình chỉ mất vài giây. Với database lớn, có thể mất vài phút.
Sau khi hoàn tất, file thường sẽ nhỏ hơn và hoạt động mượt hơn.

Compact database khi file đang đóng
Trong một số trường hợp, database bị lỗi nặng đến mức bạn không thể mở nó bình thường.
Đừng lo. Access vẫn cho phép chạy Compact and Repair từ bên ngoài.
Các bước như sau:
Bước 1: Mở Microsoft Access nhưng không mở database.
Bước 2: Vào tab Database Tools.
Bước 3: Chọn Compact and Repair Database.
Access sẽ yêu cầu bạn chọn file cần sửa.
Sau khi chọn database, quá trình compact và repair sẽ được thực hiện.
Cách này rất hữu ích khi file bị lỗi nhưng vẫn còn khả năng khôi phục.
Tự động compact khi đóng database
Một tính năng ít người biết là Access có thể tự động compact database mỗi khi đóng file.
Nếu database được sử dụng thường xuyên, tính năng này khá tiện.
Cách bật:
-
Mở database
-
Vào File → Options
-
Chọn Current Database
-
Tích vào Compact on Close
Sau khi bật tùy chọn này, mỗi lần đóng database Access sẽ tự động thực hiện quá trình compact.
File database sẽ luôn được giữ ở trạng thái tối ưu.

Một vài lưu ý trước khi compact database
Mặc dù Compact and Repair khá an toàn, vẫn nên chú ý vài điểm nhỏ.
Thứ nhất, sao lưu database.
Việc này luôn là thói quen tốt trước khi thực hiện bất kỳ thay đổi nào.
Thứ hai, đảm bảo không có người khác đang sử dụng database.
Nếu file đang được mở bởi nhiều người dùng, quá trình compact có thể không thực hiện được.
Thứ ba, kiểm tra dung lượng ổ đĩa.
Trong quá trình compact, Access sẽ tạo một bản sao tạm thời của database.
Nếu ổ đĩa không đủ dung lượng, quá trình có thể bị gián đoạn.
Những lưu ý nhỏ này giúp tránh những rắc rối không đáng có.
Compact database giúp cải thiện hiệu suất như thế nào?
Khi database được compact, Access sẽ:
-
sắp xếp lại dữ liệu trong file
-
loại bỏ vùng dữ liệu đã xóa
-
tối ưu cấu trúc bên trong database
Kết quả là:
-
file nhỏ hơn
-
query chạy nhanh hơn
-
form mở nhanh hơn
Không phải lúc nào sự cải thiện cũng rõ rệt. Nhưng với database lớn, sự khác biệt có thể khá đáng kể.

