2016-11-17 3 views
-1

これは、括弧が欠落していないOracleデータベースに対して実行しようとしている問合せです。SQLエラー:ORA-00907:表の作成時に右かっこがありません

CREATE TABLE P_DOG(
DOG_ID CHAR(5) NOT NULL, 
DOG_NAME VARCHAR2(30) NOT NULL DEFAULT 'UNKNOWN', 
DOG_BIRTHDAY_MONTH NUMBER(2) NULL CHECK(DOG_BIRTH_MONTH>=1 AND DOG_BIRTH_MONTH<=12), 
DOG_BIRTHDAY_YEAR NUMBER(4) NOT NULL CHECK(DOG_BIRTH_YEAR>=1980 AND DOG_BIRTH_YEAR<= 2030), 
SEX CHAR(1) NOT NULL, 
SPAYED_OR_NEUTERED CHAR(1) NOT NULL DEFAULT 'N', 
CONSTRAINT DOG_PK PRIMARY KEY(DOG_ID), 
); 
+4

余分な '、'最後に – Mat

答えて

1

マットがコメントで指摘最後に余分なコンマ以外にも、NOT NULLは、デフォルト値の後に来る必要があります - と、チェック制約が正しい列名を持つ必要があります。カラム名はBIRTHDAYが、条件の使用を持っていますBIRTHの場合は、列名を変更するか、条件に一致するものを変更します。

特に、 "右括弧がない"というエラーは、NOT NULLの後にDEFAULTを付けることによって発生します。注文間違い。

+0

本当にありがとうございます!それが助けになる! – james

関連する問題