oracle error, столбец здесь не разрешен - PullRequest
15 голосов
/ 13 октября 2010

Я некоторое время не пользовался Oracle, поэтому немного заржавел.

Это моя таблица:

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

Но когда я пытаюсь вставить значение, подобное этому:

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

Я получаю:

ORA-00984: column not allowed here

, указывающий на столбец типа в конце.У меня такое ощущение, что с полем ДАТА что-то не так, потому что я никогда не использовал его.

Что я сделал не так?

Ответы [ 2 ]

21 голосов
/ 13 октября 2010

Вам нужно поставить кавычки вокруг значений varchar2

Что-то вроде

insert into calendar(username, 
                     content, 
                     dateContent, 
                     type) 
  values('chris', 
         'assignment due', 
         to_date('01-OCT-2010 13:00','DD-MON-YYYY HH24:MI'), 
         'PUB');
3 голосов
/ 13 октября 2010

Может быть потому, что type является зарезервированным словом Oracle ?

Похоже, это не проблема.Прочитайте комментарий APC.

Я не удаляю этот ответ, потому что считаю этот комментарий полезным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...