PostgreSQL 的命令行psql和数据交互

一、psql

1、一旦运行,psql 将通过包含我们当前连接到的数据库名并跟随“=>”符号的提示符提示输入命令。对于在当前数据
库拥有全部权限的用户,提示符被替换为“=#".

2、psql 的命令分为两种不同的类型:SQL 命令:我们可以输入任何 PostgreSQL 支持的 SQL 语句给 psql,然后它将执行它。内部命令:有一些 psql 命令用于执行 SQL 不直接执行的命令例如列出存在的表和执行脚本。所有的内部命令都由一条反斜杠开始切不能被拆分成多行。

3、需要通过一个分号来告诉 psql 我们已经完成一条可能被拆分成多行的长 SQL 命令。注意分号不是一条 SQL 命
令必须的部分,它只是用于告诉 psql 我们已经完成输入了。

4、收集一组 psql 命令(包括 SQL 和内部命令)到一个文件并把它当做一个简单的脚本使用。内部命令“\i”将从一个文件中读取一组 psql 命令(一定要用unix方式的路径:即用左斜杠的方式)。如下:

 \i D:/company/select.sql;     

二、数据交互

1、使用 INSERT 语句往 customer 表里头添加数据,按照建表时列的顺序排列插入的值。要插入数字,则直接写数字。要插入字符串,则把字符串包含在单引号中。为了在插入的字符串里头包含单引号,我们必须在单引号之前添加一个反斜杠字符(\)。如果我们还需要插入一个反斜杠字符,那么我们需要写一对反斜杠,就像这样“\\”。

2、避免在插入数据的时候为 serial 类型的数据提供数值。

3、使用:setval('序列生成器名', 新的值);的方式给序列更新值。如:

 SELECT setval('customer_customer_id_seq', 19);

4、命令是TRUNCATE,从一个表中删除所有数据,它没有办法恢复被删除的数据。使用这个命令需要非常小心,只有当你非常确定要永久删除表中的数据才能使用。从某些方面说,它非常类似于删除表并重建它,除了它更容易操作且不会重置序列生成器。使用如下:

bpsimple=# TRUNCATE TABLE tcust;
TRUNCATE TABLE
bpsimple=# SELECT count(*) FROM tcust;
count
-------
 0
(1 row)
bpsimple=#

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值