C# SQL表达式作为Oracle 12c数据库的列名

C# SQL表达式作为Oracle 12c数据库的列名,c#,sql,oracle,C#,Sql,Oracle,我们已经将Oracle数据库迁移到12c。我有一个列名称为DATE和HOUR(不可能更改)的给定表。在我将此语句与c#一起使用之前: 此语句未与12c一起运行: ORA-00911:无效字符 我必须改变什么?谢谢您可以使用双引号(不带转义字符)指定关键字作为数据库中对象的标识符: SELECT "DATE", "HOUR" FROM Table; 注意:如果要在标识符周围使用双引号(如果要使用关键字作为列名,则必须使用双引号),则必须强制该列使用区分大小写的名称,并且每次引用该名称时必须始终在

我们已经将Oracle数据库迁移到12c。我有一个列名称为DATE和HOUR(不可能更改)的给定表。在我将此语句与c#一起使用之前:

此语句未与12c一起运行:

ORA-00911:无效字符

我必须改变什么?谢谢

您可以使用双引号(不带转义字符)指定关键字作为数据库中对象的标识符:

SELECT "DATE", "HOUR" FROM Table;
注意:如果要在标识符周围使用双引号(如果要使用关键字作为列名,则必须使用双引号),则必须强制该列使用区分大小写的名称,并且每次引用该名称时必须始终在名称中使用相同的大小写字母-请参阅。

@卡茨-请填写详细信息。

谢谢

列名都是大写的吗?@Aleksej是的are@Aleksej
DATE
是Oracle中的一个关键字,除非用双引号括起来,否则不能用作标识符。@MT0我的错,我没有看到引号的(明显的)原因……在12c中,这一区域似乎没有任何变化。也许是司机的问题?谢谢你的回答。在OracleSQL开发人员中,这是可行的,但是我需要它来从c#进行查询。当我只使用
“DATE”
时,它会给我一个错误,因为字符串需要
在第二次
@katz之后,您在问题中给出的示例代码中似乎做得很正确,下面给出了答案:
SELECT "DATE", "HOUR" FROM Table;