2016-10-23 3 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

그건 하나'varchar' 또는'에 대한 제약 조건을 제거 : 여기 내 쿼리의 일부입니다 enum' - both가 아님 –

+0

괄호 안의 매개 변수로만이 열에 입력을 제한하려면이 상황에서 ENUM 절을 사용하고 싶지 않습니까? – Nate

+0

enum을 사용하려면 varchar를 사용하지 마십시오. –

답변

1

쉼표 누락, 열거 형이 필요하지 않습니다, 시즌 문자열 '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 구문에 오류가 있습니다.위치 varchar (2) NOT NULL ENUM ("PG") 근처에서 사용할 올바른 구문에 대해 MariaDB 서버 버전에 해당하는 설명서를 확인하십시오. , "SG", "SF", "PF"at line 5 – Nate

+0

@Nate .answer updated – scaisEdge