开发者

oracle error, column not allowed here

I haven't used Oracle for a while so I'm a bit rusty.

This is my table:

create table calendar(
username VARCHAR2(12),
content VARCHAR2(100),
dateContent DATE,
type CHAR(3) CHECK (type IN ('PUB', 'PRV')));

But when I try to insert a value like this:

insert into calendar
(username, content, dateContent, type) 
values
(chris, assignment due, to_date('01-OCT-2010 13:00','开发者_开发知识库DD-MON-YYYY HH24:MI'), PUB)
/

I am getting:

ORA-00984: column not allowed here

pointing to the type column at the end. I have a feeling I'm not getting something right with the DATE field as I've never really used it.

What have I done wrong?


You need to put quotes round the varchar2 values

Something like

insert into calendar(username, 
                     content, 
                     dateContent, 
                     type) 
  values('chris', 
         'assignment due', 
         to_date('01-OCT-2010 13:00','DD-MON-YYYY HH24:MI'), 
         'PUB');


Could it be because type is a Oracle reserved word ?

Looks like this is not an issue. Read the comment by APC.

I'm not deleting this answer because I find the comment useful.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜