3

PostgreSQL表和列名是否可以使用不同的字符而不是"?

就像是:

select [TableID], [TableColumn] from [TableName]

或者

select 'TableID', 'TableColumn' from 'TableName'

代替:

select "TableID", "TableColumn" from "TableName"

我使用 C# 并且每次我需要在将SQL 粘贴到 C# 字符串时替换为,而不是"在将 C# 字符串复制到 SQL 管理器时替换。"""""

我想知道有什么可以使用而不是"引用 PostgreSQL 中的名称。

PostgreSQL 中的 CamelCase 需要引用名称,在其他情况下,名称将自动小写 - 我试图避免这种情况。

是的,我需要 PostgreSQL 中的驼峰式表和列名来自动将它们映射到 C# 属性名称。

4

2 回答 2

3

不,这是不可能的。

对象名称唯一允许的引号字符是双引号(根据 SQL 标准的要求)。

于 2012-09-21T21:00:47.063 回答
1

您可以随时尝试使用转义字符。

string sql = "select \"TableID\", \"TableColumn\" from \"TableName\"";

这应该使您能够同时保留双引号并将 sql 添加到字符串中。

但老实说,除非它是带有空格的列名。我几乎从不将引号用于任何内容,而我可能遇到的任何空格,我都会使用下划线。所以我的sql通常看起来像;

string sql = "SELECT table_id, table_column FROM table_name";
于 2013-10-21T18:28:23.073 回答