Oracle没有为小写表名提供表或视图

时间:2018-02-02 14:57:37

标签: java oracle jdbc

Insert into "user" (colums) values (?):

当使用apache执行时,java代码中的查询运行库会出现错误,表示不存在任何表或视图 但直接执行时效果很好。

1 个答案:

答案 0 :(得分:0)

在oracle双引号"中,表示字符串,它们表示带有特殊字符的标识符这意味着双引号中的标识符区分大小写

Oracle在 UPPER CASE 中存储了普通标识符,但无论如何都接受它们写入。因此,您的SQL工作为Insert into user (colums) values (?)以及Insert into User (colums) Values (?)

但您也可以指定带空格的标识符或Über User Tabelle之类的非ascii字符。将它们用双引号括起来时会起作用:

create table "Über User Tabelle" ("The Primary key" number);在这种情况下,名称也区分大小写。

因为您将表名放在双引号中,Oracle会查找不存在的小写表名。