使用 Bash 测试是否启用了 PostgreSQL hstore 扩展
Use Bash to test if PostgreSQL hstore extension is enabled
我需要使用 Bash 测试来检查 hstore
扩展是否在 PostgreSQL 中启用。不胜感激。
更新
感谢您提供有用的答案。尽管有仇恨者,这帮助我写了 this useful bash script that enables PostgreSQL hstore。
您可以 运行 一个 SQL 检查 pg_extension
的语句,例如
select count(*)
from pg_extension
where extname = 'hstore';
然后检查它的 return 值(我不使用 Linux/bash 脚本,所以我不确定如何在 shell 脚本中执行此操作)
您可能需要一些可以使用查询输出的命令。下面会简单的输出0
或者1
psql -t -A -c "select count(*) from pg_extension where extname = 'hstore'"
如果您可以从 shell 脚本中访问该结果,那么这就足够了
另一种方法是执行任何 hstore 查询并检查它是否有效:
psql template1 -c "select 'a=>1'::hstore ? 'a'"
echo $?
我需要使用 Bash 测试来检查 hstore
扩展是否在 PostgreSQL 中启用。不胜感激。
更新
感谢您提供有用的答案。尽管有仇恨者,这帮助我写了 this useful bash script that enables PostgreSQL hstore。
您可以 运行 一个 SQL 检查 pg_extension
的语句,例如
select count(*)
from pg_extension
where extname = 'hstore';
然后检查它的 return 值(我不使用 Linux/bash 脚本,所以我不确定如何在 shell 脚本中执行此操作)
您可能需要一些可以使用查询输出的命令。下面会简单的输出0
或者1
psql -t -A -c "select count(*) from pg_extension where extname = 'hstore'"
如果您可以从 shell 脚本中访问该结果,那么这就足够了
另一种方法是执行任何 hstore 查询并检查它是否有效:
psql template1 -c "select 'a=>1'::hstore ? 'a'"
echo $?