PRIMARY KEY

简介: 【11月更文挑战第15天】

SQL PRIMARY KEY 约束详解

PRIMARY KEY 约束在 SQL 中用于唯一标识表中的每条记录。它是表的一个或多个列的组合,这些列的值必须唯一,并且不能包含 NULL 值。PRIMARY KEY 约束的主要目的是保证数据记录的唯一性和完整性。

特点和使用场景

  • 唯一性PRIMARY KEY 约束确保列中的值是唯一的,没有两条记录可以拥有相同的主键值。
  • 非空性PRIMARY KEY 列不能接受 NULL 值。
  • 索引PRIMARY KEY 会自动创建一个唯一索引,这有助于提高查询效率。
  • 表的唯一性:每个表只能有一个 PRIMARY KEY,它可以由单个列或多个列组成,称为复合主键。

SQL PRIMARY KEY 约束语法

在创建表时,可以为特定列定义 PRIMARY KEY 约束:

CREATE TABLE table_name
(
    column1 data_type PRIMARY KEY,
    column2 data_type,
    ...
);

或者,为多个列定义一个 PRIMARY KEY 约束:

CREATE TABLE table_name
(
    column1 data_type,
    column2 data_type,
    PRIMARY KEY (column1, column2)
    ...
);

代码示例

假设我们正在创建一个名为 Persons 的表,其中包含人的 ID、姓氏和名字。我们希望确保 P_Id(假设为身份证号或员工编号)在整个表中是唯一的,并且每条记录都可以被唯一标识。

CREATE TABLE Persons
(
    P_Id int NOT NULL,
    LastName varchar(255) NOT NULL,
    FirstName varchar(255),
    PRIMARY KEY (P_Id)
);

在这个例子中:

  • P_Id 列被定义为 PRIMARY KEY,这意味着在插入或更新 Persons 表的记录时,P_Id 的值必须是唯一的,不能有两条记录具有相同的 P_Id 值。
  • LastNameFirstName 列没有被定义为主键,它们可以包含重复的值。
目录
相关文章
|
6月前
|
JavaScript 索引
v-for中key左右
v-for中key左右
41 1
|
关系型数据库 MySQL 数据库
解决出现的SQLIntegrityConstraintViolationExceptionw:Duplicate entry ‘10‘ for for key ‘user.PRIMARY‘问题
解决出现的SQLIntegrityConstraintViolationExceptionw:Duplicate entry ‘10‘ for for key ‘user.PRIMARY‘问题
253 0
|
关系型数据库 MySQL 索引
不会2023年你还不知道Mysql中index、primary key、unique key、foreign key是什么和如何创建吧?
不会2023年你还不知道Mysql中index、primary key、unique key、foreign key是什么和如何创建吧?
106 0
|
SQL 关系型数据库 MySQL
MySQL - key、primary key、unique key、index 区别(二)
MySQL - key、primary key、unique key、index 区别(二)
1111 0
|
存储 Oracle 关系型数据库
MySQL - key、primary key、unique key、index 区别(一)
MySQL - key、primary key、unique key、index 区别(一)
436 0
MySQL - key、primary key、unique key、index 区别(一)

热门文章

最新文章