Khóa chính – primary keys là một trường hoặc tập hợp trường chứa những giá trị duy nhất xuyên suốt một bảng. Bạn với thể sử dụng những giá trị của khóa để tham chiếu tới toàn bộ những bản ghi, do mỗi bản ghi lại với một giá trị khóa khác nhau. Mỗi bảng chỉ với thể với một khóa chính (primary keys). Access với thể tự động tạo trường khóa chính cho bạn lúc bạn tạo bảng hoặc bạn với thể chỉ định trường mình muốn sử dụng làm khóa chính. Bài viết này sẽ giải thích cách thức và nguyên do nên sử dụng khóa chính.
Tổng quan về primary keys trong Access
Access sử dụng những khóa chính – primary keys để nhanh chóng liên kết dữ liệu từ nhiều bảng và kết hợp chúng một cách với ý nghĩa. Bạn với thể thêm những trường khóa chính trong những bảng khác để tham chiếu trở lại bảng gốc là nguồn của khóa chính. Trong những bảng khác đó, những trường được gọi là khóa ngoại. Ví dụ: trường ID trong bảng Customers cũng với thể xuất hiện trong bảng Orders. Trong bảng Customers, ID là khóa chính. Trong bảng Orders, ID được gọi là khóa ngoại – foreign key. Khóa ngoại – foreign key, nói một cách dễ hiểu là khóa chính của một bảng khácan>
một. Primary key
2. Foreign key
Nếu bạn đang chuyển dữ liệu hiện với vào một cơ sở dữ liệu, bạn với thể đã với sẵn một trường mà bạn với thể tiêu dùng làm khóa chính. Thông thường, khóa chính thường là số ID hoặc một số sê-ri hoặc mã. Ví dụ, bảng Customers, trường ID khách hàng là khóa chính.
Access tự động tạo một chỉ mục cho khóa chính nhằm giúp tăng tốc truy vấn và những thao tác khác. Access cũng đảm bảo rằng mọi bản ghi đều với một giá trị trong trường khóa chính và giá trị đó luôn duy nhất.
lúc bạn tạo bảng mới trong dạng xem Biểu dữ liệu, Access sẽ tự động tạo khóa chính cho bạn và gán tên trường của “ID”, cũng như loại dữ liệu AutoNumber.
Thế nào là một khóa chính – primary key tốt?
Thông thường khóa chính với những đặc điểm sau:
- Nhận dạng cho mỗi hàng
- ko bị bỏ trống và luôn với giá trị
- Giá trị khóa chính hiếm hoặc ko thay đổi
Nếu bạn ko thể xác định được một khóa chính, hãy tạo một trường AutoNumber để tiêu dùng làm khóa. Trường AutoNumber sẽ tự tạo một giá trị cho mình mỗi lúc với bản ghi được lưu lần đầu. Vì vậy, trường AutoNumber sẽ đạt được ý muốn cả ba đặc điểm của một khóa chính tốt. Để biết thêm thông tin về cách thêm trường Số Tự động, hãy xem phần
Ví dụ những primary keys kém hiệu quả
Bất kỳ trường nào thiếu một trong những đặc điểm của một khóa chính tốt sẽ bị coi là khóa chính kém. Dưới đây là một vài ví dụ về những trường bị xem như là những khóa chính kém đối với bảng Contacts tất nhiên phần giải thích nguyên do vì sao.
những khóa chính kém | nguyên do | |
Tên cá nhân | với thể bị trùng tên à ko là duy nhất | |
Số điện thoại | với thể thay đổi | |
E-mail address | với thể thay đổi | |
Zip code | Nhiều người với thể sở hữu cùng ZIP code | |
Tổ hợp dữ liệu và con số | Phần dữ liệu với thể thay đổi, gây khó khăn cho việc quản lý. với thể gây nhầm lẫn nếu phần dữ liệu được tiêu dùng lặp lại làm một trường riêng. Ví dụ, kết hợp thành phố và một chữ số tăng dần (ví dụ, NEWYORK0579) sẽ là một lựa sắm tồi nếu thành phố đó cũng được lưu làm một trường. | |
Số An sinh Xã hội (SSN) |
|
|
Khóa tổ hợp: với nhiều hơn một khóa chính trong một bảng
Trong một số trường hợp, bạn sẽ muốn sử dụng hai trường trở lên làm khóa chính trong một bảng. Ví dụ: bảng Chi tiết Đơn hàng lưu trữ những mục dòng cho đơn hàng với thể sử dụng hai trường làm khóa chính: ID Đơn hàng và ID Sản phẩm. Một khóa chứa nhiều trường được gọi là khóa tổng hợp.
Thêm khóa chính (primary key) vào bảng
Tạo khóa chính để liên kết dữ liệu giữa nhiều bảng.
- Tại khu vực điều hướng (nếu ko thấy nhấn F11), bấm chuột phải vào bảng, rồi sắm Design View.
- sắm trường hoặc giữ Ctrl để sắm 2 trường trở lên bạn muốn tiêu dùng làm khóa chính
- lúc với 2 trường được sắm khóa chính được gọi là khóa tổng hợp
- sắm Design > Primary Key.
Gỡ bỏ khóa chính – primary key trong Access
lúc bạn loại bỏ khóa chính, những trường trước đó được tiêu dùng làm khóa chính sẽ ko cung cấp những phương tiện chính để nhận dạng một bản ghi nữa.
Loại bỏ khóa chính ko xóa hẳn những trường khỏi bảng của bạn mà chỉ loại bỏ chỉ mục được tạo cho khóa chính đó.
- Trước lúc với thể loại bỏ khóa chính, bạn phải cứng cáp chắn rằng khóa đó ko tham gia vào bất kỳ mối quan hệ bảng nào. Nếu bạn cố loại bỏ khóa chính vốn là một phần của một hay nhiều quan hệ – relationship, Access sẽ cảnh báo rằng trước hết, bạn phải xóa relationship đó.Để xóa mối quan hệ bảng, hãy hoàn thành những bước sau:
- Nếu những bảng tham gia vào relationship đang mở, hãy đóng những bảng đó. Bạn ko thể xóa relationship lúc những bảng đang mở.
- Trên tab Database Tools, trong nhóm Relationships, bấm vào Mối quan hệ.
-
- Nếu những bảng tham gia vào relationship ko hiển thị, trên tab Design, trong nhóm Relationships, bấm vào Show Table.
- sắm những bảng bạn định thêm trong hộp thoại Show Table rồi bấm vào Add và bấm vào Close.
-
- Bấm vào dòng relationship mà bạn muốn xóa (dòng này sẽ được in đậm lúc được sắm) rồi nhấn phím DELETE.
- Trên tab Design, trong nhóm Relationships, bấm vào Close.
- Sau lúc bạn xóa mối quan hệ, tại khung điều hướng, bấm chuột phải vào bảng mà bạn muốn loại bỏ khóa chính rồi bấm Design View.
Mẹo: Nếu bạn ko nhìn thấy khung điều hướng, nhấn F11 để hiển thị nó.
- Bấm vào bộ sắm hàng cho khóa chính hiện tại.
Nếu khóa chính bao gồm một trường đơn lẻ, hãy bấm vào bộ sắm hàng dành cho trường đó.
Nếu khóa chính bao gồm nhiều trường, hãy bấm vào bộ sắm hàng dành cho trường bất kỳ trong khóa chính.
- Trên tab Design, trong nhóm Tools, hãy bấm Primary Key.
những khóa được chỉ định bị xóa khỏi những trường mà trước đó bạn đã sắm làm khóa chính.
Lưu ý: lúc bạn lưu một bảng mới mà ko đặt khóa chính, Access sẽ nhắc bạn tạo một khóa. Nếu bạn sắm với, Access sẽ tạo một trường ID sử dụng kiểu dữ liệu AutoNumber để cung cấp một giá trị duy nhất cho mỗi bản ghi. Nếu bảng của bạn đã với sẵn một trường AutoNumber rồi, Access sẽ tiêu dùng trường đó làm khóa chính.
Thay đổi khóa chính trong Access
Nếu bạn quyết định thay đổi khóa chính của một bảng, bạn với thể thực hiện theo những bước sau:
- Loại bỏ khóa chính hiện tại theo những hướng dẫn trong phần Loại bỏ khóa chính.
- Đặt khóa chính theo những hướng dẫn trong mục Thêm khóa chính.