PostgreSQL常用命令

4/17/2023 PostgreSQL

PostgreSQL常用命令

# 一、连接到 PostgreSQL 数据库

  • psql -U username -d database_name:连接到指定数据库,需要输入用户名和密码。 示例:
psql -U postgres -d mydatabase
1
  • \c database_name:切换到指定数据库,不需要重新登录。
\c mydatabase
1

# 二、基本操作

  • 增 向表中插入一行数据。 INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...); 示例:
INSERT INTO employees (first_name, last_name, salary) VALUES ('John', 'Doe', 50000);
1
  • 删 从表中删除满足条件的数据 DELETE FROM table_name WHERE condition; 示例:
DELETE FROM employees WHERE id = 1;
1
  • 改 修改表中的数据 UPDATE table_name SET column = value WHERE condition; 示例:
UPDATE employees SET salary = 60000 WHERE last_name = 'Doe';
1
  • 查 查询表中的数据 SELECT column1, column2, ... FROM table_name WHERE condition; 示例:
SELECT * FROM  last_name = 'Doe';
1

# 二、数据库管理

  • CREATE DATABASE database_name;:创建一个新的数据库。 示例:
CREATE DATABASE mydatabase;
1
  • DROP DATABASE database_name;:删除指定的数据库。 示例:
DROP DATABASE mydatabase;
1
  • CREATE TABLE table_name (column1 datatype, column2 datatype, ...);:创建一个新的表。 示例:
CREATE TABLE employees (id SERIAL PRIMARY KEY, first_name VARCHAR(50), last_name VARCHAR(50), salary INTEGER);
1
  • DROP TABLE table_name;:删除指定的表。 示例:
DROP TABLE employees;
1

# 三、索引和约束

  • CREATE INDEX index_name ON table_name (column);:在表的列上创建索引,提高查询效率。 示例:
CREATE INDEX idx_employees_last_name ON employees (last_name);
1
  • ALTER TABLE table_name ADD CONSTRAINT constraint_name UNIQUE (column);:为表添加唯一性约束,确保列中的值唯一。 示例:
ALTER TABLE employees ADD CONSTRAINT uniq_employee_email UNIQUE (email);
1
  • ALTER TABLE table_name ALTER COLUMN column_name TYPE datatype;:更改表结构,修改列类型等。 示例:
ALTER TABLE employees ALTER COLUMN salary TYPE NUMERIC(10,2);
1

# 四、其他常用命令

  • \q:退出 psql 命令行工具。
  • \d:列出数据库中的所有表。
  • \dt:列出当前数据库中的所有表格及其信息(如表名称、所有者和创建时间等)。
  • \du:列出所有用户及其角色信息。
  • \timing:启用查询计时器,测量 SQL 查询所需的时间。