首页 > 数据库 >PostgreSQL-常用命令汇总

PostgreSQL-常用命令汇总

时间:2023-08-21 18:44:37浏览次数:34  
标签:PostgreSQL 数据库 使用 汇总 指定 常用命令 导入 表名 test

 

1. 连接到 PostgreSQL 数据库:

psql -h 主机名 -p 端口号 -U 用户名 -d 数据库名

 

2. 列出所有数据库:

\l

 

3. 切换到指定数据库:

\c 数据库名

 

4. 查看当前数据库中的所有表:

\dt

 

5. 查看表的结构:

\d 表名

 

6. 执行 SQL 查询:

SELECT * FROM 表名;

 

7. 创建数据库:

CREATE DATABASE 数据库名;

8. 创建表:

CREATE TABLE 表名 (

  列名1 数据类型,

列名2 数据类型,

   ...

);

9. 插入数据到表中:

INSERT INTO 表名 (列名1, 列名2, ...) VALUES (值1, 值2, ...);

 

10. 更新表中的数据:

UPDATE 表名 SET 列名 = 新值 WHERE 条件;

 

11. 删除表中的数据:

DELETE FROM 表名 WHERE 条件;

 

12. 删除表:

DROP TABLE 表名;

 

13. 退出 psql:

\q

 

14. 查看帮助:

\?

 

15. 查看表空间信息:

\db

 

 

16. 查看索引信息:

\d  索引

 

 

17. 列出所有角色和用户

\dg

 

18. 查看表的权限分配情况

\dp 表名

 

 

19. COPY导入导出

postgres的COPY命令可以快速的导出/导入数据到postgresql数据库中,支持常用的文件格式,如:txt、sql、csv、压缩文件、二进制格式等。特别适合批量导出和导入数据,速度比较快。
COPY TO把一个表的所有内容都拷贝到一个文件;
COPY FROM从一个文件里拷贝数据到一个表里(把数据附加到表中已经存在的内容里)。

注意:COPY只能用于表,不能用于视图。

相关参数:

(1) FROM:指定源文件或输入数据流。可以是本地文件路径或服务器文件路径,也可以是一个输入流。如果是一个输入流,则必须使用STDIN关键字。

(2) DELIMITER:指定分隔符。默认为制表符(" \t "),可以使用其他字符或字符串。例如:DELIMITER ‘;’ 表示用分号作为分隔符。

(3) HEADER:指定是否包含标题行。默认情况下不包含标题行,如果源文件包含标题行,则需要使用HEADER关键字。

(4) NULL:指定NULL值的表示方式。默认情况下,需要使用"\N"表示NULL值,如果输入数据使用其他的表示方式,可以使用这个选项。例如:NULL ‘null’ 表示用"null"作为NULL值的表示方法。

(5) ENCODING:指定编码方式。默认是UTF8编码。如果需要使用其他编码方式,可以使用ENCODING关键字。例如:ENCODING ‘GBK’ 表示采用GBK编码方式。

(6) QUOTE:指定数据中使用的引号。默认情况下,使用双引号(")作为引号。如果输入数据使用其他的引号,可以使用这个选项。例如:QUOTE ‘’’ 表示使用单引号(’)作为引号。

(7) ESCAPE:指定转义字符。默认情况下,使用反斜杠("")作为转义字符。如果需要采用其他转义字符,可以使用ESCAPE关键字。例如:ESCAPE ‘|’ 表示使用竖线(|)作为转义字符。

(8) FORMAT:输入数据的格式。默认为文本格式(TEXT)。可选的格式包括二进制格式(BINARY)和CSV格式(CSV)。例如:FORMAT binary 表示采用二进制格式。

(9) FILENAME:指定输出文件的路径。不是必需的参数,只有在导出数据到文件时才需要使用。

(10) ON CONFLICT:指定冲突解决策略。只有在导入数据到表时才需要使用。通常情况下,如果目标表中已经存在要插入的行,会报错。这时,可以使用ON CONFLICT关键字指定冲突解决策略。例如:ON CONFLICT DO NOTHING 表示如果目标表中已经存在要插入的行,则不执行任何操作,跳过这个行;ON CONFLICT DO UPDATE SET 列名=EXCLUDED.列名 表示如果目标表中已经存在要插入的行,则更新该行数据。其中,EXCLUDED表示要插入的行。

(11) HEADER:指定表头所在的行数。只有在导入CSV格式文件时才需要使用。默认为1,表示第一行是表头行。如果表头行不是第一行,需要使用HEADER_ROW关键字指定表头所在的行数。例如:HEADER_ROW 2 表示表头位于第二行。

(12) FORMAT:指定自定义格式。只有在采用自定义格式时才需要使用。在使用自定义格式时,需要使用FORMAT关键字指定格式类型。例如:FORMAT text 表示要导出的数据是文本格式。

 

 

(1)导入

COPY 表名  FROM  ‘文件路径’   DELIMITER  ‘列分隔符’WITH  CSV  HEADER ;

(2)导出

COPY 表名 TO ‘文件路径’ WITH csv;

 

20. 导入导出数据库

(1)导出

pg_dump -U <用户名> -c <库名> -f <文件路径>

例如:

pg_dump -U postgres -c test -f /home/test.sql

(2)导入

\i <文件路径>

例如:

登录到数据库里面去执行;

postgres=# \c test
You are now connected to database "test" as user "postgres".
test=# \i /home/test.sql

21. 导入导出数据表

(1)导出

pg_dump -U <用户名> -t <表名> <库名> > <文件路径>

库名为:test

表名为:yunweijia

pg_dump -U postgres -t yunweijia test > /home/bf/230629/yunweijia.sql

(2)导入

psql -U <用户名> <库名> < <文件路径>

例如:

psql -U postgres test < /home/bf/230629/yunweijia.sql

 

标签:PostgreSQL,数据库,使用,汇总,指定,常用命令,导入,表名,test
From: https://www.cnblogs.com/yeyuzhuanjia/p/17646784.html

相关文章

  • PostgreSQL-查询每个表的大小
    1、查询数据库中单个表的大小(不包含索引)selectpg_size_pretty(pg_relation_size('表名')); 2、查询所有表的大小并排序(包含索引)SELECTtable_schema||'.'||table_nameAStable_full_name,pg_size_pretty(pg_total_relation_size('"'||table_schema||&#......
  • suse linux 常用命令
    (1)命令ls——列出文件 ls-la给出当前目录下所有文件的一个长列表,包括以句点开头的“隐藏”文件 lsa*列出当前目录下以字母a开头的所有文件 ls-l*.doc给出当前目录下以.doc结尾的所有文件 (2)命令cp——复制文件 cpafileafile.bak把文件复制为新文件afile.bak cp......
  • C++文档入口汇总
    一、C++参考手册(中文)cppreferencehttps://zh.cppreference.com/二、菜鸟教程(中文)https://www.runoob.com/cplusplus/cpp-tutorial.html三、C++的常用库及其文档:标准模板库(STL)提供了许多数据结构和算法,如向量、链表、队列、堆栈、映射和排序算法等。其中文文档链接:https://......
  • Docker 命令汇总
    容器操作查看正在运行的容器:dockerps查看所有容器(包括停止的容器):docker ps -a启动容器:docker start停止容器:docker stop进入正在运行的容器:docker exec -it /bin/bash导出容器为镜像:docker commit删除容器:docker rm镜像操作查看本地镜像列表:docker images拉取镜像:d......
  • Linux常用命令_拷贝移动、打包压缩、文本编辑命令(cp、mv、tar、vim)
                ......
  • Linux常用命令_文件目录操作命令(mkdir、rm、rmdir)
       ......
  • Linux常用命令_文件命令操作命令(ls、cd、cat、more、tail)
          ......
  • Java常用命令使用方法
    以下是一些常用的Java命令以及它们的使用方法:java:运行Java程序语法:java<options><class>示例:javaHelloWorldjavac:编译Java源代码语法:javac<options><sourcefiles>示例:javacHelloWorld.javajar:创建或解压JAR文件创建JAR文件:语法:jarcf<jarfile><files>示例:jarcfmyjar.......
  • 红帽认证RedHat-RHCSA shell的基本应用用户和组管理网络配置和防火墙管理笔记汇总
    shell命令概述Shell作用:命令解释器介于操作系统内核与用户之间,负责解释命令行获得命令帮助内部命令help命令的“--help”选项使用man命令阅读手册页命令行编辑的几个辅助操作Tab键:自动补齐反斜杠“\”:强制换行快捷键Ctrl+U:清空至行首快捷键Ctrl+K:清空至行尾快捷键Ctr......
  • tracer ftrace笔记(20)—— Systrace中tag汇总
    一、视频显示1.HW_VSYNC_ON_XXX(1)类型布尔值,1表示HWVSYNC信号开关被打开,0表示开关被关闭。(2)时机HWVYSNC硬件信号被打开和关闭的时候。(3)解释HW_VSYNC_ON_XXX后面的XXX一般是一串数字,代表的是displayid,如果你的机器有外接了显示器,那么可以通过displayid......