Show
Khóa quan hệ giúp cho chúng ta xác định được duy nhất một bộ trong một quan hệ dựa vào các giá trị của các thuộc tính của quan hệ này. Khóa quan hệCác khái niệm khóaSiêu khóa (super key) của một quan hệ là một thuộc tính hoặc một tập các thuộc tính dùng để xác định duy nhất một bộ của quan hệ này. Một siêu khóa có thể chứa thêm một các thuộc tính mà chúng không cần thiết để xác định duy nhất một bộ. Một siêu khóa hiển nhiên của quan hệ là tập tất cả các thuộc tính của quan hệ này. Khóa dự tuyển (candidate key) của một quan hệ là một siêu khóa $K$ mà không có một tập con thực sự bất kỳ $K’ \subset K$ lại là một siêu khóa. Khóa dự tuyển $K$ của quan hệ $r$ có hai đặc điểm sau:
Một quan hệ bất kỳ phải có ít nhất một khóa dự tuyển và có thể có nhiều khóa dự tuyển. Nếu không có tập con các thuộc tính nào là khóa dự tuyển thì tập tất cả các thuộc tính của quan hệ này phải là khóa dự tuyển, bởi vì quan hệ không thể có các bộ trùng nhau. Thuộc tính khóa (key attribute, prime attribute) là một thuộc tính tham gia vào khóa dự tuyển, tên của thuộc tính khóa được gạch dưới. Thuộc tính không khóa (non-key attribute) là một thuộc tính không tham gia vào khóa dự tuyển. Tên của thuộc tính không khóa không được gạch dưới. Khóa phức hợp (composite key) là một khóa có nhiều hơn một thuộc tính. Khóa chính (primary key) là một khóa dự tuyển được chọn để xác định duy nhất một bộ của quan hệ. Khóa chính có thể chỉ có một hoặc có nhiều thuộc tính. Một quan hệ chỉ có duy nhất 1 khóa chính, các khóa dự tuyển còn lại được gọi là các khóa khác (alternate key). Các thuộc tính của khóa chính có tên được gạch dưới nét liền. Khóa ngoại (foreign key) là một thuộc tính hoặc một tập thuộc tính của một quan hệ tương ứng với (tham chiếu đến) khóa dự tuyển của một quan hệ khác hoặc cùng quan hệ đang xét. Nếu một thuộc tính xuất hiện trong nhiều hơn 1 quan hệ, thì thông thường thuộc tính này biểu diễn mối liên kết giữa các bộ của nhiều quan hệ. Các thuộc tính của khóa ngoại có tên được gạch dưới nét đứt. Khóa mượn (borrowed key) là một khóa dự tuyển có chứa khóa ngoại. Khóa (key) của lược đồ quan hệ R có tập thuộc tính $U = \{A_1, A_2, …, A_m\}$ là một tập con $K = \{A_{j1}, A_{j2},…,A_{jn}\}$ với $j_1, j_2,…, j_n$ là các số nguyên phân biệt và nằm trong khoảng từ 1 đến $m$, phải thỏa mãn đồng thời 2 điều kiện sau:
Ví dụ các loại khóaXét các lược đồ quan hệ sau:
Trong đó:
Xác định khóaĐể xác định khóa của một lược đồ quan hệ, chúng ta dựa vào thông tin ngữ ngữa (semantic information) của các thuộc tính của lược đồ quan hệ này và các mối quan hệ giữa các thuộc tính trong thế giới thực. Từ đó chúng ta xác định việc trùng lặp dữ liệu có thể xảy ra hay không. Mối quan hệ giữa các thuộc tính được thể hiện bằng một khái niệm được gọi là phụ thuộc hàm. Chúng ta có thể xác định tất cả các khóa của một lược đồ quan hệ từ tập các phụ thuộc hàm này. Nếu một tập $K \subseteq U$ thỏa mãn điều kiện (1) thì $K$ là một siêu khóa của lược đồ quan hệ $R$, cho dù $K$ có thỏa mãn điều kiện (2) hay không. Một siêu khóa hiển nhiên của $R$ là $U$. Các đặc tính của quan hệMột quan hệ có các đặc tính sau đây:
Việc đặt tên (quan hệ, thuộc tính) nên theo quy tắc gợi nhớ, các từ trong tên được ngăn cách bởi dấu gạch dưới (underscore) và viết hoa ký tự đầu tiên. Khóa chính là gì? Thông tin khóa chính dành cho người mới tiếp xúc máy tínhKhóa chính là gì? Những thao tác cơ bản của khóa chính trong cơ sở dữ liệu SQL là gì? Phân biệt khóa chính và khóa ngoại trong SQL như thế nào? Hãy cùng 123job.vn đi giải đáp thắc mắc này nhé. Đối với tin học văn phòng và các bạn làm về công nghệ thông tin thì đã quá quen thuộc với cụm từ khóa chính trong cơ sở dữ liệu máy tính. Nhưng đa số chúng ta vẫn chưa hiểu hết được về cụm từ này cũng như chức năng của nólà gì? Vậy khóa chính là gì? Những thao tác cơ bản của nólà gì? Phân biệt khóa chính và khóa ngoại trong SQL Server như thế nào? Hãy cùng 123job.vn đi giải đáp thắc mắc này nhé. I. Khóa chính - yếu tố thiết yếu đối với cơ sở dữ liệu1. Khái niệmKhóa chính là gì? Khái niệm về khóa chính luôn là điều mà mọi người quan tâm và đặt ra rất nhiều câu hỏi xoay quanh nó. Những ai mới tiếp xúc với cơ sở dữ liệu SQL Server và mới làm quen với việc xử lý cơ sở dữ liệu SQL Serverdatabase thì chắc chưa nắm rõ được về khóa chính. Khóa chính được hiểu là khái niệm được sử dụng trong các lĩnh vực liên quan đến ngành công nghệ thông tin, toán tin, khoa học dữ liệu thuộc cơ sở dữ liệu SQL Server. Trong tiếng anh nócó tên gọi là Primary Key với ký hiệu một chiếc chìa khóa đi kèm. Qua tìm hiểu cơ bản này chúng ta có thể hiểu khóa chính theo cách như sau: - Khóa chính hay với tên gọi khác là khóa ràng buộc chính thường được dùng để định danh mỗi một record trong bảng table duy nhất của cơ sở dữ liệu SQLServer - Ngoài ra nó còn có thể thể hiện các giá trị trong bảng với nhau trong cơ sở dữ liệu SQL Server. Tuy nhiên, khi sử dụng khóa chính trong cơ sở dữ liệu SQLServer thì người dùng cũng cần chú ý đến một và điều như sau: 2. Chức năng của khóa chínhChức năng là gì? Khóa chính cũng như khóa ngoại rất quan trọng đối với cơ sở dữ liệu SQLServer và dưới đây chính là những chức năng chính của nó: - Khóa chính sẽ là nơi chứa các giá trị duy nhất hay cơ sở dữ liệu SQL Server duy nhất được lưu thông xuyên suốt ở nhiều table với nhau. Mỗi table sẽ ghi mỗi giá trị khác nhau và người thiết lập khóa chính sẽ sử dụng các giá trị trong các table đó vì chúng được thiết lập ở cùng một định dạng với nhau. - Nóchỉ được thiết lập duy nhất trên mỗi table và có nhiều table chứa duy nhất một khóa chính. Khi thiết lập khóa chính thì có nhiều ứng dụng yêu cầu người dùng thiết lập khóa chính nhưng Access lại chủ động tạo khóa chính cho người dùng. 3. Phạm vi áp dụng chủ yếutrong đời sốngPhạm vi chủ yếu để áp dụng khóa chính chính là đời sống hiện tại như tin học mà đặc biệt là trong lĩnh vực tin học văn phòng. Sử dụng khóa chính sẽ giúp cho việc xử lý các giá trị trong cơ sở dữ liệu SQLServer nhanh hơn và thuận tiện hơn. Nhưng việc sử dụng khóa chính lại rất khó, không hề đơn giản như chúng ta nghĩ, những người mới làm quen sẽ cần thời gian để học tập và học cách vận dụngtrong lĩnh vực tin học và ứng dụng điều đó vào trong cuộc sống hàng ngày. 4. Cách thiết lập khóa chính cho người mới dùngCách thiết lập Primary Key cho người mới dùng Những người mới làm quen với việc sử dụng khóa chính thì cần thời gian làm quen với việc thiết lập. Dưới đây là các bước thiết lậptrong cơ sở dữ liệu SQLServer cho người mới bắt đầu chi tiết nhất: II. Một số thao tác thác về khoá chính1. Cách tạo primary keyCách tạo primary key 1.1. Tạo Primary Key bằng lệnh CREATE TABLECREATE TABLE ten_bang 1.2. Tạo Primary Keybằng lệnh ALTER TABLEALTER TABLE ten_bang 2. Xóa Primary Key trong cơ sở dữ liệu SQL ServerNếu trong trường lập thiết lập sai hoặc nhầm khóa chính trong cơ sở dữ liệu SQLServer thì cần xóa khóa chính bằng lệnh ALTER TABLE ALTER TABLE ten_bang 3. Vô hiệu hóa Primary Key trong cơ sở dữ liệu SQL ServerVô hiệu hóatrong cơ sở dữ liệu SQL Server Cú pháp để vô hiệu hóa trong cơ sở dữ liệu bằng lệnh ALTER INDEX như sau: ALTER INDEX ten_rang_buoc ON ten_bang 4. Kích hoạt khóa chính trong cơ sở dữ liệu SQL ServerMuốn kích hoạtPrimary Key thì chúng ta sử dụng lệnh ALTER INDEX: ALTER INDEX ten_rang_buoc ON ten_bang III. Phân biệt khóa chính và khóa ngoại trong cơ sở dữ liệu SQLServer1. Giới thiệu chung về khóa ngoạiKhóa ngoại là gì? Trong lĩnh vực tin học văn phòng thì ngoàiPrimary Key trong cơ sở dữ liệu SQLServer thì còn có khóa ngoại. Vậy khóa ngoại là gì? Khóa ngoại cũng được hiểu nghĩa tương đương với khóa chính với những đặc điểm như sau: - Khóa ngoại của table là con trỏ chỉ tới các khóa chính ở các bảng khác 2. Phân biệt khóa chính với khóa ngoại chính xác nhấtPhân biệt khóa chính với khóa ngoại Hiện nay, có nhiều người dùng thường bị nhầm khóa chính với khóa ngoại trong cơ sở dữ liệu SQL Server. Để có thể phân biệt được khóa chính với khóa ngoại thì người dùng cần phân biệt trên 4 phương diện như sau: - Khóa chính được thiết lập duy nhất tại mỗi bảng còn khóa ngoại chỉ là một tập hợp trong bảng và là khóa chính của một bảng khác. IV. Một số loại khóa khác trong cơ sở dữ liệu SQL ServerMột số loại khóa khác trong cơ sở dữ liệu SQL Server 1. Super key (Siêu khóa)Super Key hay được hiểu là siêu khóa là một tập hợp của một hoặc nhiều hơn một khóa có thể được sử dụng trong việc xác định một bảng duy nhất trong một bảng như Primary Key, Unique Key, Alternate Key là các tập hợp con của Super Key 2. Candidate key (Khóa dự tuyển)Candidate key - khóa dự tuyển là một tập hợp của một hoặc nhiều trường cột có thể xác định một bản ghi duy nhất trong table và Candidate có thể có nhiều khóa dự tuyển trong bảng. Mỗi khóa dự tuyển có thể làm việc độc lập như một Primary Key - khóa chính. 3. Alternate Key (Khóa thay thế)Alternate Key là một khóa thay thế có thể làm việc như một khóa chính. Theo như cơ sở dữ liệu SQL Server thì khóa thay thế có bản chất là một khóa dự tuyển chứ không phải là một khóa chính 4. Composite / Compound KeyComposite/Compound Key là tổng hợp khóa, là sự kết hợp của nhiều hơn một trường, một cột trong một table. Nó có thể là khóa Candidate Key hoặc Primary Key 5. Unique KeyUnique Key là một tập hợp của một hoặc nhiều trường, cột trong một table xác định duy nhất của một bảng ghi trong cơ sở dữ liệu SQL Server. UNique Key cũng giống như Primary Key nhưng nó có thể chấp nhận được cả những giá trị Null và nó không có các giá trị nhân bản. V. Kết luậnNhư vậy, qua bài viết trên thì 123job.vn đã cung cấp đến bạn đọc những thông tin hữu ích nhất về khóa chính như khóa chính là gì, chức năng cơ bản của khóa chính, cách thiết lập khóa chính dành cho người mới bắt đầu,... Mong bạn đọc hãy đón đọc bài viết một cách tích cực nhất nhé. Tag: Bài viết nhiều người đọc
123job.vn - Dream jobs, great places to work, high salary 123job.vn - Trao cơ hội cho hàng triệu người với những công việc mơ ước với môi trường làm việc chuyên nghiệp và mức lương tốt nhất. Với sứ mệnh: Cung cấp các thông tin việc làm, review công ty hấp dẫn, dịch vụ tư vấn tuyển dụng xác thực và chất lượng cho nhà tuyển dụng và người lao động, chúng tôi luôn tận tâm tận lực, không ngừng sáng tạo nhằm đem lại chất lượng dịch vụ hàng đầu, giúp tất cả mọi người có được một công việc phù hợp nhất. Tự hào: Là trang tuyển dụng uy tín, là cầu nối của hàng triệu người tìm việc và nhà tuyển dụng. Giá trị cốt lõi:
Nếu bạn đang muốn kết nối với những nhà tuyển dụng uy tín hàng đầu Việt Nam, đừng ngần ngại hãy TẠO CV NGAY để tăng gấp 5 lần cơ hội có được công việc với mức lương tốt nhất nhé! |