bash - 将 postgresql 结果存储在 bash 变量中

标签 bash postgresql variables

如何像下面的脚本一样在 bash 变量上存储标量 postgresql 值?

dbname="testlauf"
username="postgres"

vartest='psql -c -d $dbname -U $username -h localhost -p 5432 "SELECT gid FROM testtable WHERE aid='1';"'
echo "$vartest"

我尝试了几种不同的写作方式,但似乎没有任何效果。提前致谢。

最佳答案

-c 选项放在它的参数 - 查询之前。还请注意使用额外的 -t 选项来获取元组值。当然,使用反引号 (`) 运算符。

还建议使用 -X 选项,因为有时 .psqlrc 文件可能会添加一些冗余输出,以及 -A 选项,它禁用列对齐(空格)。

为了跳过 NOTICE 或其他附加消息,请包含 -q 标志。

vartest=`psql -d $db -U $user -AXqtc "SELECT gid FROM testtable WHERE aid='1'"`

关于bash - 将 postgresql 结果存储在 bash 变量中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15242752/

相关文章:

linux - 无法在 .bash_profile 中设置路径和来源

mysql - 如何最好地在 mysql 命令中使用 bash 中声明的变量?

表上的 SQL AVG

sql - 对多个表执行查询

bash - 从 shell 中的每一行中提取最后一个单词

linux - 使用 youtube-dl 和 mplayer 的 YouTube 视频流脚本出现 "Unknown option on the command line: -gf"错误的终端

java - 如何在 sql INSERT 期间自动生成 ID?

ruby - 当没有对对象的引用时,对象会发生什么特别的事情吗?

Javascript:使用函数作为变量

bash - 在 sed 中展开变量