2016-10-23 16 views
-1

私はMySQLデータベースにテーブルを作成しようとしていますが、どこで構文が間違っているのかわかりません。私のクエリでは、ENUMを使用する行で1064エラーが返されます。ここに私のクエリの一部です:SQL列挙型エラー1064

カンマが欠落している
CREATE TABLE General 
(
    pId varchar(30) NOT NULL UNIQUE, 
    Hometown varchar(30) NOT NULL, 
    Year char(2) NOT NULL ENUM("FR","SO","JR","SR") 
    Position varchar(2) NOT NULL ENUM("PG","SG","SF","PF","C"), 
    Season char(4) NOT NULL DEFAULT 2016, 
    Date_Of_Birth DATE NOT NULL, 
    CONSTRAINT PRIMARY KEY (pId)); 
+0

の制約を削除しますenum' - 両方ではありません –

+0

括弧内のパラメータだけでこの列への入力を制限したい場合は、この状況でENUM句を使用したくないですか? – Nate

+0

enumを使用する場合は、varcharを使用しないでください。 –

答えて

1

それは `varchar`または`どちらかだ、列挙型は、タイプを必要としない季節は、文字列「2016」で、主キー

CREATE TABLE General 
    (
     pId varchar(30) NOT NULL UNIQUE, 
     Hometown varchar(30) NOT NULL, 
     Year ENUM("FR","SO","JR","SR"), <---- here missing commma 
     Position ENUM("PG","SG","SF","PF","C"), 
     Season char(4) NOT NULL DEFAULT '2016', 
     Date_Of_Birth DATE NOT NULL, 
     PRIMARY KEY (pId) 
); 
+0

コンマを追加した後、私はまだこのエラーが表示されていました: – Nate

+0

ERROR 1064(42000):SQL構文にエラーがあります。Position varchar(2)NOT NULL ENUM( "PG")の近くで使用する正しい構文については、MariaDBサーバーのバージョンに対応するマニュアルを参照してください。 、 "SG"、 "SF"、 "PF" 5行目 – Nate

+0

@Nate .answer updated – scaisEdge