oracle  表名 、字段名 默认不区分大小写,除非建表语句中带双引号 如CREATE TABLE "TableName"("ID" number)。

CREATE TABLE tablename (ID number);

在查询的时候表名可以任意大小写。

create table table_name(id number);

当该表其中的一个字母为大写时 会报错。

create table Table_name(id number);

ORA-00955: name is already used by an existing object

数据库已经有同名对象。即在不加双引号的情况下,oracle认为 table_name 和Table_name 是一样的。

不加双引号建表:

select * from table_name;

select * from TABLE_NAME;

select * from Table_name;

以上三种都可以查询出结果。

并且oracle中显示的表名为大写:

20357335d9570cd53b30c70508a6dcd6.png

使用双引号建表:

CREATE TABLE "TableName"(id number)

使用以下方式查询,都会提示表不存在:

select * from tablename;

select * from TABLENAME;

select * from Tablename;

select * from TableName;

即使使用的名称和建表时使用的一样,也还是会报错。

ORA-00942: table or view does not exist。

只有使用 select * from "TableName" 才可以查询数据。

数据库显示为大小写分明:

03d6eaf293e30f0180974499495c2eeb.png

字段名和表名同理,如果建表的时候字段名称有双引号,那么在查询的时候,在字段名上也需要使用双引号。即使表名没有使用双引号。即

CREATE TABLE TABLENAME("ID",NUMBER)。

在查询时使用 select "ID"  from  tablename 或 select "ID" from Tablename  都可以。

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐