web-dev-qa-db-ja.com

オラクルエラー、列はここでは許可されていません

私はしばらく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

最後のタイプ列を指しています。 DATEフィールドを実際に使用したことがないため、正しく処理されていないように感じます。

私は何を間違えましたか?

15
Dorka

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');
21
Richard

typeOracle予約語 であるためでしょうか?

これは問題ではないようです。 APCのコメントを読んでください。

コメントが役に立ったので、この回答を削除しません。

3
codaddict