在关系型数据库中,一张表一般只能有一个主键,但是可以通过复合主键的方式来实现类似于拥有两个主键的效果。复合主键是指由多个字段组合而成的主键,这样就能够确保每一条记录都是唯一的。
例如,假设有一张学生表,需要同时以学号和身份证号作为主键,可以通过以下SQL语句来创建复合主键:
CREATE TABLE Students (
student_id INT,
id_card_number VARCHAR(20),
-- other columns
PRIMARY KEY (student_id, id_card_number)
);
这样,每个学生的学号和身份证号组合在一起就构成了一个唯一的主键,确保了表中的每条记录都是唯一的。