我在我的postgresql数据库的公共架构中创建了一个表Abc
。根据文档public
应该是默认模式。如预期的那样,search_path
设置为"$user",public
。但以下故障:Postgresql:表名/模式混淆
select * from Abc
这个调用失败过:
select * from public.Abc
两个产生一个错误,指出relation ... does not exist
。但这一个工作正常:
select * from public."Abc"
我是一个经验丰富的T-SQL开发人员,但新的postgresql。根据文档,应该可以将“正常”的SQL与postgresql结合使用。但这对我来说不起作用。任何暗示我可能已经搞砸了!?
我在PG世界中生活的一个很好的经验法则是使用下划线而不是像在Microsoft SQL Server中那样使用骆驼案例。所以做fast_table而不是“FastTable”。我发现最低限度的额外报价令人讨厌。尽管其他人可能会认为下划线是一样的。但是我来自Oracle背景,所以我很喜欢它。 – Kuberchaun