You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PostgreSQL中关键字作为命名空间的查询方法——解决'in'命名空间查询报错问题

解决PostgreSQL中用保留关键字作为Schema名的查询问题

你猜得一点没错——in确实是PostgreSQL的保留关键字(就是咱们写WHERE id IN (1,2,3)里的那个),直接写in.places的时候,数据库会把in当成SQL语法的一部分解析,自然就报错了。

解决这个问题超简单,只需要用英文双引号把这个和关键字重名的schema名括起来,告诉数据库:“这是个标识符,不是SQL关键字哦”。

正确的查询语句

直接修改成下面这样就能正常查询了:

SELECT city_name FROM "in".places;

额外小提示

  • 不光是schema名,要是你的表名、列名碰巧和PostgreSQL的保留关键字重名,都可以用这个双引号包裹的方法解决。
  • 注意双引号是英文的,而且用双引号包裹标识符后,PostgreSQL会严格区分大小写(不过你的schema是小写的in,所以完全没问题)。

内容的提问来源于stack exchange,提问作者Blighty

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.29 22:38:11