3

使用 PostgreSQL,DataGrip 将创建的表/列的所有名称转换为小写。如何禁用它并保持原始格式?我更喜欢 PascalCase。

即使我在 DataGrip 控制台中手动运行 SQL 命令也会发生这种情况:

create table FooBar();

所以表foobar是在db中创建的。我在网上搜索,一无所获。我想这不是 PostgreSQL 问题,因为 pgAdmin3 在做同样的事情时不会改变任何东西。

我的环境:

  • 视窗 7 专业版
  • 数据夹 2016.3.4
  • PostgreSQL 9.4
4

1 回答 1

4

这是 Postgres 的一项功能,DataGrip 与此问题无关。如果你想要“PascalCaseIdentifiers”,你必须使用双引号。不带引号的标识符不区分大小写。它们会自动转换为小写。

阅读文档中的详细信息。

pgAdmin3 在做同样的事情时不会改变任何东西。

恰恰相反,当标识符包含大写字母时,pgAdmin3添加SQL双引号(参见New table...对话框中的最后一个选项卡)。

在我(而且不仅是我)诚实的意见中,使用带引号的标识符通常是一个非常糟糕的主意。它只会产生更多的问题,然后它们是值得的。

于 2017-03-07T19:01:42.637 回答