2011-10-27 1 views
-4

이 문제가 무엇입니까? ERROR 1064다른 MySQl 구문 오류 1064

CREATE TABLE IF NOT EXISTS `Service Manager`.`Company` (
    `Company_ID` INT(6) UNSIGNED NOT NULL AUTO_INCREMENT , 
    `GUID` CHAR(32) UNSIGNED NOT NULL , 
    `Region_ID` INT(6) UNSIGNED NOT NULL , 
    `name` VARCHAR(45) NOT NULL , 
    `inactive` TINYINT NOT NULL , 
    PRIMARY KEY (`Company_ID`) , 
    UNIQUE INDEX `name` (`name` ASC) , 
    UNIQUE INDEX `GUID` (`GUID` ASC)) 
ENGINE = InnoDB; 

(42000) : 당신은 당신의 SQL 구문에 오류가 있습니다; 올바른 구문은 내가 당신을 생각하는 3

답변

1

라인에 가까운 'UNSIGNED NOT NULL로, Region_ID INT (6) NULL NOT UNSIGNED, name VARCHAR (45'를 사용하는 MySQL 서버 버전에 해당하는 설명서를 확인 아마도 CHAR 컬럼에 UNSIGNED 한정자를 원하지 않는다.

이 이상 MySQL 5.0 Reference Manual :: 11 Data Types :: 11.1 Data Type Overview :: 11.1.6 String Types :: 11.1.6.1 The CHAR and VARCHAR Types를 참조하십시오.

+0

을이 UNSIGNED 만 정수 필드에서 설정할 수 있습니다, 정확, 또한 http://dev.mysql.com/ 참조 doc/refman/5.6/ko/numeric-types.html, 여기에 언급되어 있습니다 : "모든 정수 유형에는 선택 (비표준) 속성 UNSIGNED가있을 수 있습니다. 부호없는 유형은 열의 음수가 아닌 숫자 만 허용하거나 열의 더 큰 상위 숫자 범위가 필요할 때 사용할 수 있습니다. " – Oldskool