PostgreSQL – 插入
在 PostgreSQL 中,INSERT 语句用于向数据库表中添加新行。当创建一个新数据库时,它最初没有数据。 PostgreSQL 提供了 INSERT 语句来将数据插入到数据库中。
Syntax:
INSERT INTO table(column1, column2, …)
VALUES
(value1, value2, …);
使用 PostgreSQL INSERT 语句时必须遵循以下规则:
- 首先要做的是指定表名,后跟要插入数据或行的列。
- 其次,您必须在 VALUES 子句之后列出逗号分隔的值列表。值列表的顺序必须与表名后指定的列列表的顺序相同。
让我们建立一个示例数据库和表来演示 INSERT 语句。
- 使用以下命令创建名为“company”的数据库:
CREATE DATABASE company;
- 使用以下命令将“员工”表添加到数据库中以显示公司层次结构:
CREATE TABLE employee ( employee_id INT PRIMARY KEY, first_name VARCHAR (255) NOT NULL, last_name VARCHAR (255) NOT NULL, manager_id INT, FOREIGN KEY (manager_id) REFERENCES employee (employee_id) ON DELETE CASCADE );
manager_id列中的值表示员工向其报告的高级经理。如果是 Null,他/她不会向任何人报告。
示例 1:
在这里,我们将使用以下命令向表中添加一些员工数据:
INSERT INTO employee (
employee_id,
first_name,
last_name,
manager_id
)
VALUES
(1, 'Sandeep', 'Jain', NULL),
(2, 'Abhishek ', 'Kelenia', 1),
(3, 'Harsh', 'Aggarwal', 1),
(4, 'Raju', 'Kumar', 2),
(5, 'Nikhil', 'Aggarwal', 2),
(6, 'Anshul', 'Aggarwal', 2),
(7, 'Virat', 'Kohli', 3),
(8, 'Rohit', 'Sharma', 3);
输出:
使用以下命令验证插入的数据:
SELECT * FROM employee;
整体层次结构如下图所示:
示例 2:
在上面的示例中,我们将多行插入到公司数据库中,而在本示例中,我们将向数据库中添加一行。
INSERT INTO employee (
employee_id,
first_name,
last_name,
manager_id
)
VALUES
(9, 'Mohit', 'Verma', 3);
Output:
现在使用以下命令检查新添加的员工:
SELECT * FROM employee;
现在整体层次结构如下图所示: