Bạn có thể ngăn các giá trị trùng lặp trong một trường trong bảng Access bằng cách tạo chỉ mục duy nhất. Chỉ mục duy nhất là chỉ mục yêu cầu mỗi giá trị của trường được lập chỉ mục là duy nhất.
Có hai cách cơ bản để bạn có thể tạo chỉ mục duy nhất:
-
Đặt thuộc tính Chỉ mục của trường thành Có (Không trùng lặp) Bạn có thể thực hiện điều này bằng cách mở bảng trong Cửa sổ thiết kế. Phương pháp này rất dễ dàng và là lựa chọn tốt nếu bạn chỉ muốn thay đổi một trường mỗi lần.
-
Tạo một truy vấn định nghĩa dữ liệu tạo chỉ mục duy nhất Bạn có thể thực hiện điều này bằng cách sử Dạng xem SQL. Phương pháp này không dễ dàng như sử dụng cửa sổ Thiết kế, nhưng có một lợi thế: bạn có thể lưu truy vấn định nghĩa dữ liệu và sử dụng lại sau này. Điều này rất hữu ích nếu bạn định kỳ xóa và tạo lại bảng cũng như muốn sử dụng chỉ mục duy nhất trên một số trường.
Bạn muốn làm gì?
Đặt thuộc tính Chỉ mục của trường thành Có (Không trùng lặp)
-
Trong Ngăn Dẫn hướng, bấm chuột phải vào bảng có chứa trường, rồi bấm dạng xem Thiết kế.
-
Chọn trường mà bạn muốn đảm bảo có các giá trị duy nhất.
-
Trong ngăn Thuộc tính Trường ở cuối cửa sổ thiết kế bảng, trên tab Chung, đặt thuộc tính Chỉ mục thành Có (Không trùng lặp).
-
Lưu các thay đổi vào bảng của bạn.
Lưu ý: Nếu các mục trùng lặp đã tồn tại trong trường dành cho bản ghi bảng của bạn, Access sẽ hiển thị thông báo lỗi (Lỗi 3022) khi bạn thử lưu các thay đổi bảng bằng chỉ mục mới. Bạn sẽ cần loại bỏ các giá trị trường trùng lặp đó khỏi bản ghi bảng trước khi có thể đặt và lưu chỉ mục duy nhất mới.
Tạo chỉ mục duy nhất cho một trường bằng cách sử dụng truy vấn định nghĩa dữ liệu
-
Trên tab Tạo, trong nhóm Truy vấn, bấm Thiết kế Truy vấn.
-
Trên tab Thiết kế cho truy vấn, trong nhóm Kết quả , bấm vào mũi tên bên dưới Dạng xem, rồi bấm Dạng xem SQL.
-
Xóa tất cả SQL hiện có khỏi truy vấn. (Rất có thể Access chỉ hiển thị SELECT; trước khi bạn xóa văn bản hiện có.)
-
Nhập hoặc dán SQL sau đây vào truy vấn:
CREATE UNIQUE INDEX index_name
ON table (field); -
Trong SQL, thay thế các biến như sau:
-
Thay index_name bằng tên cho chỉ mục của bạn. Bạn nên sử dụng tên giúp xác định xem chỉ mục để làm gì. Ví dụ: nếu chỉ mục nhằm đảm bảo rằng số điện thoại là duy nhất, bạn có thể đặt tên cho chỉ unique_phone.
-
Thay thế bảng bằng tên của bảng có chứa trường sẽ được lập chỉ mục. Nếu tên bảng có khoảng trắng hoặc ký tự đặc biệt, bạn phải đặt tên trong dấu ngoặc vuông.
-
Thay thế trường bằng tên của trường được lập chỉ mục. Nếu tên trường có khoảng trắng hoặc ký tự đặc biệt, bạn phải đặt tên trong dấu ngoặc vuông.
-
-
Lưu và đóng truy vấn.
-
Chạy truy vấn để tạo chỉ mục. Lưu ý rằng bạn có thể chạy truy vấn từ macro bằng cách sử dụng hành động macro RunSQL.