如果找到零行,则返回 PSQL 代码



如果找到零行,我希望我的 psql 命令失败:

psql -U postgres -d db -c "select * from user where id=1 and name='Joe';"

我希望能够检查返回值。如果至少存在一行,则从进程(!)返回 0,如果不存在此类行,则从 psql 进程返回非零。如果未找到行,如何设置返回代码?

我不认为 psql 可以自己做到这一点,但如果你只是想看看是否有任何行与退出状态,你可以像这样组合它

psql -U postgres -d db -t -c "select * from user where id=1 and name='Joe'" | egrep .

这将导致 egrep 以非零退出,如果它无法匹配任何内容。 -t将使其不打印列标题和摘要信息,因此如果需要这些内容,您可能需要调整此命令行。

相关内容

  • 没有找到相关文章

最新更新