开头还是介绍一下群,如果感兴趣polardb ,mongodb ,mysql ,postgresql ,redis 等有问题,有需求都可以加群群内有各大数据库行业大咖,CTO,可以解决你的问题。加群请联系 liuaustin3 ,在新加的朋友会分到2群(共820人左右 1 + 2 + 3)新人会进入3群,进瑞典马工群的单独说。
最近有人问,想通过SHELL 来传入变量到 PSQL的SQL 语句中,如何去撰写,因为他写的程序老是有问题。PSQL 命令中被经常DISS的问题除了不能带有密码外,就是这个问题了,变量。
怎么在PSQL 外部将变量设置,并传入到POSTGRESQL命令行内,我们做一个例子:
psql -X -v a=b
\echo THE VALUE OF VAR a IS :a
psql -X --set=a=c
举例:我们想将多个字段传入到PG内,可以将多个值进行引号设置即可
[postgres@pg_qixun ~]$ psql -X -v a='postgresql EDB enterprise database'
下面我们举一个复杂的例子
我们的变量在一个文本中,而我们要执行的脚本在另一个文件中
psql -x -v a="$( cat file.txt )" -f show.sql
而如果你有一个更复杂的执行方式,如同下面的这个例子
然后我们从外部来调用这个函数并赋予变量
方法1 失败
方法2 失败
psql -X -v a="postgres%" -c 'select count_db(:a)'
ERROR: syntax error at or near ":"
LINE 1: select count_db(:a)
方法3 失败
文章转载自AustinDatabases,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
王炸!OGG 23ai 终于支持从PostgreSQL备库抽取数据了
曹海峰
410次阅读
2025-03-09 12:54:06
玩一玩系列——玩玩login_hook(一款即将停止维护的PostgreSQL登录插件)
小满未满、
377次阅读
2025-03-08 18:19:28
明明想执行的SQL是DELETE、UPDATE,但为什么看到的是SELECT(FDW的实现原理解析)
小满未满、
357次阅读
2025-03-19 23:11:26
PostgreSQL初/中/高级认证考试(3.15)通过考生公示
开源软件联盟PostgreSQL分会
310次阅读
2025-03-20 09:50:36
IvorySQL 4.4 发布 - 基于 PostgreSQL 17.4,增强平台支持
通讯员
200次阅读
2025-03-20 15:31:04
套壳论
梧桐
196次阅读
2025-03-09 10:58:17
命名不规范,事后泪两行
xiongcc
185次阅读
2025-03-13 14:26:08
PG vs MySQL 执行计划解读的异同点
进击的CJR
125次阅读
2025-03-21 10:50:08
版本发布| IvorySQL 4.4 发布
IvorySQL开源数据库社区
115次阅读
2025-03-13 09:52:33
宝藏PEV,助力你成为SQL优化高手
xiongcc
115次阅读
2025-03-09 23:34:23