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', '[email protected]');
  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 = '[email protected]'
    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
相关推荐
OK_boom25 分钟前
Dapper的数据库操作备忘
数据库
艺杯羹1 小时前
JDBC之ORM思想及SQL注入
数据库·sql·jdbc·orm·sql注入
blackA_1 小时前
数据库MySQL学习——day4(更多查询操作与更新数据)
数据库·学习·mysql
极限实验室2 小时前
Easysearch 迁移数据之 Reindex From Remote
数据库
朴拙数科2 小时前
基于LangChain与Neo4j构建企业关系图谱的金融风控实施方案,结合工商数据、供应链记录及舆情数据,实现隐性关联识别与动态风险评估
数据库·langchain·neo4j
小李学不完3 小时前
Oracle--SQL事务操作与管理流程
数据库
qq_441996053 小时前
为何 RAG 向量存储应优先考虑 PostgreSQL + pgvector 而非 MySQL?
数据库·mysql·postgresql
Ivan陈哈哈3 小时前
Redis是单线程的,如何提高多核CPU的利用率?
数据库·redis·缓存
小光学长4 小时前
基于vue框架的电信用户业务管理系统的设计与实现8ly70(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面。
数据库
程序员不想YY啊4 小时前
MySQL元数据库完全指南:探秘数据背后的数据
数据库·mysql·oracle