当前位置: 首页 > news >正文

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

文章目录

      • 连接数据库
      • 列出数据库
      • 列出表
      • 增删改查操作
      • 基本的维护命令
      • 其他常用命令

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

连接数据库

  1. 启动 psql 客户端

    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)。

    例如:

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

    \c mydatabase
    

列出数据库

  1. 列出所有数据库

    \l
    

列出表

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

    \dt
    

增删改查操作

  1. 插入数据

    INSERT INTO table_name (column1, column2, column3, ...)
    VALUES (value1, value2, value3, ...);
    

    例如:

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

    SELECT * FROM table_name;
    

    例如:

    SELECT * FROM employees;
    
  3. 更新数据

    UPDATE table_name
    SET column1 = value1, column2 = value2, ...
    WHERE condition;
    

    例如:

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

    DELETE FROM table_name
    WHERE condition;
    

    例如:

    DELETE FROM employees
    WHERE first_name = 'John' AND last_name = 'Doe';
    

基本的维护命令

  1. 创建数据库

    CREATE DATABASE new_database;
    
  2. 删除数据库

    DROP DATABASE database_name;
    
  3. 创建表

    CREATE TABLE table_name (column1 datatype constraints,column2 datatype constraints,...
    );
    

    例如:

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

    DROP TABLE table_name;
    
  5. 添加列

    ALTER TABLE table_name ADD COLUMN column_name datatype;
    

    例如:

    ALTER TABLE employees ADD COLUMN phone_number VARCHAR(20);
    
  6. 删除列

    ALTER TABLE table_name DROP COLUMN column_name;
    

    例如:

    ALTER TABLE employees DROP COLUMN phone_number;
    
  7. 修改列

    ALTER TABLE table_name ALTER COLUMN column_name TYPE new_datatype;
    

    例如:

    ALTER TABLE employees ALTER COLUMN email TYPE VARCHAR(150);
    
  8. 创建索引

    CREATE INDEX index_name ON table_name (column_name);
    

    例如:

    CREATE INDEX idx_email ON employees (email);
    
  9. 删除索引

    DROP INDEX index_name;
    

    例如:

    DROP INDEX idx_email;
    
  10. 创建唯一索引

    CREATE UNIQUE INDEX index_name ON table_name (column_name);
    

    例如:

    CREATE UNIQUE INDEX unique_email ON employees (email);
    
  11. 删除唯一索引

    DROP INDEX index_name;
    

    例如:

    DROP INDEX unique_email;
    
  12. 创建视图

    CREATE VIEW view_name AS
    SELECT column1, column2, ...
    FROM table_name
    WHERE condition;
    

    例如:

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

    DROP VIEW view_name;
    

    例如:

    DROP VIEW active_employees;
    
  14. 查看表结构

    \d table_name
    

    例如:

    \d employees
    
  15. 查看索引

    \di
    
  16. 查看视图

    \dv
    

其他常用命令

  1. 退出 psql

    \q
    
  2. 查看帮助

    \?
    
  3. 查看当前连接的数据库

    \conninfo
    
  4. 清空查询结果

    \! clear
    
  5. 执行 SQL 脚本文件

    \i /path/to/script.sql
    

http://www.mrgr.cn/news/78128.html

相关文章:

  • element-ui 中el-calendar 日历插件获取显示的第一天和最后一天【原创】
  • ES 和Kibana-v2 带用户登录验证
  • Dkron 架构与设计
  • 谷粒商城篇章12--P326-P339--Sentinel/Sleuth+Zipkin服务链路追踪【分布式高级篇九】
  • 【C++】从C到C++
  • librdns一个开源DNS解析库
  • 五种创建k8s的configMap的方式及configmap使用
  • JavaScript核心语法(1)
  • oneplus6线刷、trwp、magisk(apatch)、LSPosed、Shamiko、Hide My Applist
  • 卷积神经网络学习记录
  • WPF中如何让Textbox显示为一条直线
  • Selenium 包介绍
  • 高标准农田智慧农业系统建设方案
  • React-useEffect的使用
  • 免费实用在线AI工具集合 - 加菲工具
  • 加菲工具 - 好用免费的在线工具集合
  • 【Python】分割秘籍!掌握split()方法,让你的字符串处理轻松无敌!
  • 代码管理之Gitlab
  • 【深度学习】【RKNN】【C++】模型转化、环境搭建以及模型部署的详细教程
  • docker compose 使用记录
  • ThingsBoard规则链节点:Azure IoT Hub 节点详解
  • C51相关实验
  • docker 安装arm架构mysql8
  • Leetcode(双指针习题思路总结,持续更新。。。)
  • solr 远程命令执行 (CVE-2019-17558)
  • 用 Python 从零开始创建神经网络(十):优化器(Optimizers)(持续更新中...)