PostgreSQL – 主键
在本文中,我们将使用 SQL 语句研究 PostgreSQL 主键约束。主键是用于在表中唯一标识行的一列或一组列。从技术上讲,主键约束是非not-null
约束和UNIQUE
约束的混合。一张表中只能存在一个主键。每当向表中添加主键时,PostgreSQL 都会在所使用的列或一组列上生成唯一的 B 树索引,用于定义主键。
Syntax: column_name Data-type PRIMARY KEY
现在让我们看一些例子。
示例 1:
在这个例子中,我们将创建一个表(比如,books)并添加一个列(比如,book_id)作为表的主键。
CREATE TABLE books (
book_id INTEGER PRIMARY KEY,
title TEXT,
price INTEGER
);
现在让我们使用以下命令向表中插入一些数据:
INSERT INTO books(book_id, title, price)
VALUES
('101', 'Jobs', '2000'),
('102', 'Geeta', '250'),
('103', 'Ramayana', '354'),
('104', 'Vedas', '268');
现在我们将使用以下命令检查插入的内容是否按预期工作:
SELECT * FROM books;
输出:
示例 2:
在此示例中,我们将向现有表添加 PRIMARY 键。因此,让我们首先使用以下命令创建一个:
CREATE TABLE vendors (name VARCHAR(255));
现在使用 INSERT 语句vendors
表添加几行,如下所示:
INSERT INTO vendors (NAME)
VALUES
('Microsoft'),
('IBM'),
('Apple'),
('Samsung');
现在验证插入操作,我们使用以下 SELECT 语句从供应商表中查询数据:
SELECT
*
FROM
vendors;
这将为我们提供以下结果:
现在,如果我们想将一个名为id
的主键添加到vendors
表中并且id
字段自动增加一个单位,我们使用以下语句:
ALTER TABLE vendors ADD COLUMN ID SERIAL PRIMARY KEY;
让我们使用以下命令再次检查 vendor 表:
SELECT
id, name
FROM
vendors;
输出: