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
相关推荐
好奇的菜鸟1 小时前
如何在IntelliJ IDEA中设置数据库连接全局共享
java·数据库·intellij-idea
tan180°2 小时前
MySQL表的操作(3)
linux·数据库·c++·vscode·后端·mysql
Hello.Reader3 小时前
Redis 延迟排查与优化全攻略
数据库·redis·缓存
简佐义的博客4 小时前
破解非模式物种GO/KEGG注释难题
开发语言·数据库·后端·oracle·golang
爬山算法4 小时前
MySQL(116)如何监控负载均衡状态?
数据库·mysql·负载均衡
老纪的技术唠嗑局7 小时前
OceanBase PoC 经验总结(二)—— AP 业务
数据库
阿里云大数据AI技术7 小时前
OpenSearch 视频 RAG 实践
数据库·人工智能·llm
m0_623955669 小时前
Oracle使用SQL一次性向表中插入多行数据
数据库·sql·oracle
阿蒙Amon10 小时前
C#读写文件:多种方式详解
开发语言·数据库·c#
东窗西篱梦10 小时前
Redis集群部署指南:高可用与分布式实践
数据库·redis·分布式