psql数据库用cmd命令装_查看数据库备份的命令

数据库 (56) 2023-09-02 15:12

Hi,大家好,我是编程小6,很荣幸遇见你,我把这些年在开发过程中遇到的问题或想法写出来,今天说一说psql数据库用cmd命令装_查看数据库备份的命令,希望能够帮助你!!!。

pg数据库备份和恢复命令

  • 前言
  • 一、数据库备份命令
  • 二、数据库sql语句操作
    • 1.序列
    • 2.case when的使用
    • 2.offset的使用
  • 总结

前言

记录日常工作中一些关于pg数据的操作,操作环境windows系统。


一、数据库备份命令

切换到数据库安装的bin目录下,cmd打开命令提示界面,输入如下命令
1、备份整个数据库,包括结构和数据

pg_dump -h localhost -p 5432 -U postgres -d data> D:\data.bak

2、只备份数据库某个表的结构

pg_dump -h localhost -p 5432 -U postgres -d data -t sys_user -s> D:\sysuser.bak

3、还原数据库,首先创建一个新的数据库(数据库名可以不一样)

psql -h localhost -p 5432 -U postgres -d ship<  C:\ship.bak

4、sql语句结果导出csv文件

 COPY (select * from test where time between '2022-04-07 06:00:00' and '2022-04-07 18:00:00' ) to 'D:/test-04-07.csv' with csv header;

copy函数里面 的select语句和正常查询语句一样,可以加任意条件
with csv header:表示将字段名称作为表头

5、命令执行sql文件

 psql -h 127.0.0.1 -U postgres -d test -p 5432 -a -f  脚本路径.sql

二、数据库sql语句操作

1.序列

自增序列:

create SEQUENCE test_id_seq start 1;

test_id_seq :序列名,自己随意取

使用自增序列,设计表的时候使用

nextval('test_id_seq '::regclass)

例:
psql数据库用cmd命令装_查看数据库备份的命令_https://bianchenghao6.com/blog_数据库_第1张
序列值初始化:

alter sequence test_id_seq restart with 1

2.case when的使用

(示例):

       SELECT (CASE WHEN type='t' THEN 1 ELSE 0 END) AS manual,(CASE WHEN other='f' THEN 1 ELSE 0 END) AS automatic FROM testWHERE shift=(SELECT shift FROM test ORDER BY ID DESC LIMIT 1)

表示当type字段的数据库值是‘t’时,查出结果为1,否则为0
表示当other字段的数据库值是‘f’时,查出结果为1,否则为0

2.offset的使用

在某些情况下,可能需要从一个特定的偏移开始提取记录:
例:从第三位开始提取 3 个记录

SELECT * FROM test LIMIT 3 OFFSET 2

总结

主要想记录一些不常用的东西,要了解其他关于pgsql数据的函数和sql操作可移步:https://www.runoob.com/postgresql/postgresql-tutorial.html

今天的分享到此就结束了,感谢您的阅读,如果确实帮到您,您可以动动手指转发给其他人。

发表回复