【问题标题】:PostgreSQL check if table exist throwing "relation does not exist" errorPostgreSQL 检查表是否存在抛出“关系不存在”错误
【发布时间】:2016-07-19 00:56:58
【问题描述】:

在 PostgreSQL 中,我尝试检查表是否存在:

SELECT EXISTS (SELECT * FROM table_name);

它会抛出一个错误。如何检查表是否已经存在所以结果将是布尔值?因为目前我可以使用 try-catch(如果不存在则进入捕获)而不是结果上的 if-else 来实现相同的效果......

谢谢,

【问题讨论】:

标签: postgresql


【解决方案1】:

其中任何一个都应该可以工作,但根据您的权限设置方式,您可能无权访问这些表:

SELECT EXISTS (SELECT relname FROM pg_class WHERE relname = 'table_name');

SELECT EXISTS (SELECT table_name FROM information_schema.tables WHERE table_name = 'table_name');

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-12-25
    • 1970-01-01
    • 1970-01-01
    • 2010-12-04
    相关资源
    最近更新 更多