PostGres命令【常用维护,增删改查】

文章目录

PostgreSQL 中常用的 psql 命令,包括连接数据库、列出数据库、列出表、增删改查操作以及一些基本的维护命令。

连接数据库

  1. 启动 psql 客户端

    sh 复制代码
    psql -U your_username -d your_database -h your_host -p your_port
    • -U your_username:指定用户名。
    • -d your_database:指定要连接的数据库。
    • -h your_host:指定主机名(默认为 localhost)。
    • -p your_port:指定端口号(默认为 5432)。

    例如:

    sh 复制代码
    psql -U postgres -d mydatabase -h localhost -p 5432
  2. psql 提示符下连接数据库

    sql 复制代码
    \c mydatabase

列出数据库

  1. 列出所有数据库

    sql 复制代码
    \l

列出表

  1. 列出当前数据库中的所有表

    sql 复制代码
    \dt

增删改查操作

  1. 插入数据

    sql 复制代码
    INSERT INTO table_name (column1, column2, column3, ...)
    VALUES (value1, value2, value3, ...);

    例如:

    sql 复制代码
    INSERT INTO employees (first_name, last_name, email)
    VALUES ('John', 'Doe', 'john.doe@example.com');
  2. 查询数据

    sql 复制代码
    SELECT * FROM table_name;

    例如:

    sql 复制代码
    SELECT * FROM employees;
  3. 更新数据

    sql 复制代码
    UPDATE table_name
    SET column1 = value1, column2 = value2, ...
    WHERE condition;

    例如:

    sql 复制代码
    UPDATE employees
    SET email = 'john.newemail@example.com'
    WHERE first_name = 'John' AND last_name = 'Doe';
  4. 删除数据

    sql 复制代码
    DELETE FROM table_name
    WHERE condition;

    例如:

    sql 复制代码
    DELETE FROM employees
    WHERE first_name = 'John' AND last_name = 'Doe';

基本的维护命令

  1. 创建数据库

    sql 复制代码
    CREATE DATABASE new_database;
  2. 删除数据库

    sql 复制代码
    DROP DATABASE database_name;
  3. 创建表

    sql 复制代码
    CREATE TABLE table_name (
        column1 datatype constraints,
        column2 datatype constraints,
        ...
    );

    例如:

    sql 复制代码
    CREATE TABLE employees (
        id SERIAL PRIMARY KEY,
        first_name VARCHAR(50),
        last_name VARCHAR(50),
        email VARCHAR(100)
    );
  4. 删除表

    sql 复制代码
    DROP TABLE table_name;
  5. 添加列

    sql 复制代码
    ALTER TABLE table_name ADD COLUMN column_name datatype;

    例如:

    sql 复制代码
    ALTER TABLE employees ADD COLUMN phone_number VARCHAR(20);
  6. 删除列

    sql 复制代码
    ALTER TABLE table_name DROP COLUMN column_name;

    例如:

    sql 复制代码
    ALTER TABLE employees DROP COLUMN phone_number;
  7. 修改列

    sql 复制代码
    ALTER TABLE table_name ALTER COLUMN column_name TYPE new_datatype;

    例如:

    sql 复制代码
    ALTER TABLE employees ALTER COLUMN email TYPE VARCHAR(150);
  8. 创建索引

    sql 复制代码
    CREATE INDEX index_name ON table_name (column_name);

    例如:

    sql 复制代码
    CREATE INDEX idx_email ON employees (email);
  9. 删除索引

    sql 复制代码
    DROP INDEX index_name;

    例如:

    sql 复制代码
    DROP INDEX idx_email;
  10. 创建唯一索引

    sql 复制代码
    CREATE UNIQUE INDEX index_name ON table_name (column_name);

    例如:

    sql 复制代码
    CREATE UNIQUE INDEX unique_email ON employees (email);
  11. 删除唯一索引

    sql 复制代码
    DROP INDEX index_name;

    例如:

    sql 复制代码
    DROP INDEX unique_email;
  12. 创建视图

    sql 复制代码
    CREATE VIEW view_name AS
    SELECT column1, column2, ...
    FROM table_name
    WHERE condition;

    例如:

    sql 复制代码
    CREATE VIEW active_employees AS
    SELECT first_name, last_name, email
    FROM employees
    WHERE status = 'active';
  13. 删除视图

    sql 复制代码
    DROP VIEW view_name;

    例如:

    sql 复制代码
    DROP VIEW active_employees;
  14. 查看表结构

    sql 复制代码
    \d table_name

    例如:

    sql 复制代码
    \d employees
  15. 查看索引

    sql 复制代码
    \di
  16. 查看视图

    sql 复制代码
    \dv

其他常用命令

  1. 退出 psql

    sql 复制代码
    \q
  2. 查看帮助

    sql 复制代码
    \?
  3. 查看当前连接的数据库

    sql 复制代码
    \conninfo
  4. 清空查询结果

    sql 复制代码
    \! clear
  5. 执行 SQL 脚本文件

    sql 复制代码
    \i /path/to/script.sql
相关推荐
薛定谔的算法12 小时前
phoneGPT:构建专业领域的检索增强型智能问答系统
前端·数据库·后端
Databend13 小时前
Databend 亮相 RustChinaConf 2025,分享基于 Rust 构建商业化数仓平台的探索
数据库
得物技术14 小时前
破解gh-ost变更导致MySQL表膨胀之谜|得物技术
数据库·后端·mysql
Raymond运维18 小时前
MariaDB源码编译安装(二)
运维·数据库·mariadb
沢田纲吉19 小时前
🗄️ MySQL 表操作全面指南
数据库·后端·mysql
RestCloud1 天前
SQL Server到Hive:批处理ETL性能提升30%的实战经验
数据库·api
RestCloud1 天前
为什么说零代码 ETL 是未来趋势?
数据库·api
ClouGence2 天前
CloudCanal + Paimon + SelectDB 从 0 到 1 构建实时湖仓
数据库
DemonAvenger2 天前
NoSQL与MySQL混合架构设计:从入门到实战的最佳实践
数据库·mysql·性能优化
AAA修煤气灶刘哥2 天前
后端人速藏!数据库PD建模避坑指南
数据库·后端·mysql