今天在ORACLE11G下创建一个表,结果发现报错!ORA-00904::invalid identifier
create table Image(
imageId NUMBER(30) primary key not null,
userId NUMBER(30),
userName VARCHAR2(75),
modifiedDate TIMESTAMP(6),
name VARCHAR2(90) not null,
type VARCHAR2(75) not null,
path VARCHAR2(75) not null,
size NUMBER(30) not null,
dataId NUMBER(30) default 0 not null,
businessType VARCHAR2(75) not null,
title VARCHAR2(90),
description VARCHAR2(300),
status NUMBER(30),
priority NUMBER(30) default 0 not null,
custom1 VARCHAR2(300),
custom2 VARCHAR2(300),
custom3 VARCHAR2(300),
custom4 VARCHAR2(300)
)
size报错
感觉莫名其妙,那就给它加个双引号"size",结果创建成功。
如果你认为问题已经解决了,那就为时过早了。
我查看了一下表的结构。
发现就size是小写的。
select size from image;
查询的时候,还报错了。
size要加上单引号或者双引号才能查询。
我决定要解决这个问题。
size是ORACLE保留字,不能作为列名。