Sql 简明教程
SQL - Alternate Key
The SQL Alternate Key
数据库表中的 SQL Alternate Keys 是目前未选作主键的候选键。它们可用于唯一识别表中的元组(或记录)。
没有特定的查询或语法用于在表中设置备用键。它只是一个接近的二级候选键,可以选作主键。因此,它们也称为次要候选键。
让我们通过一个例子理解备用键的概念。假设我们有一个名为 CUSTOMERS 的表,其中包含 ID、NAME、AGE、AADHAAR_ID、MOBILE_NO 和 SALARY 等不同字段,如下所示:
像客户的 id、手机号码和 aadhaar 号码之类的详细信息是唯一的,我们可以使用其各自的字段(ID、AADHAAR_ID 和 MOBILE_NO)唯一识别 CUSTOMERS 表中的记录。因此,这三个字段可以被视为备选键。
在这些字段中,如果有一个被声明为 CUSTOMERS 表的主键,那么剩下的两个将是备用键。
Features of Alternate Keys
以下是备用键的一些重要性质/特征 −
-
备用键不允许重复的值。
-
一个表可以有多个备用键。
-
备用键可以包含 NULL 值,除非明确设置 NOT NULL 约束。
-
所有备用键都可以是候选键,但并非所有候选键都是备用键。
-
主键(也是候选键)不能被视为备用键。
Example
为了更好地理解,让我们创建上述讨论的表,演示各种键的使用并说明可被视为备用键的字段。
CREATE TABLE CUSTOMERS(
ID INT,
NAME VARCHAR (20),
AGE INT,
AADHAAR_ID BIGINT,
MOBILE_NO BIGINT,
SALARY DECIMAL (18, 2),
PRIMARY KEY(ID)
);
现在,使用 INSERT 语句向 CUSTOMERS 表中插入一些记录,如下所示 −
INSERT INTO CUSTOMERS VALUES
(1, 'Ramesh', 32, 90123498456, 9023456789, 22000.00 ),
(2, 'Khilan', 25, 91123249545, 9032456578, 24500.34 ),
(3, 'Kaushik', 23, 91223242546, 9012436789, 20000.12 );
该表将被创建为:
ID |
NAME |
AGE |
AADHAAR_ID |
MOBILE_NO |
SALARY |
1 |
Ramesh |
32 |
90123498456 |
9023456789 |
22000.00 |
2 |
Khilan |
25 |
91123249545 |
9032456578 |
24500.34 |
3 |
Kaushik |
23 |
91223242546 |
9012436789 |
20000.12 |
Keys in a table
总结一下,让我们重新审视一下数据库表中的所有键 −
Primary Key
Primary Key 是用于从表中检索记录的主键。它是一个表中的单个列或字段,可唯一标识数据库表中的每条记录。
在使用 CREATE TABLE 语句创建表时可以使用 PRIMARY KEY 关键字进行设置。以下是针对表中的列创建主键约束的基本语法 −
CREATE TABLE table_name(
column1 datatype,
column2 datatype,
column3 datatype,
.....
columnN datatype,
PRIMARY KEY(column_name)
);