2012-02-09 9 views
0
Errore 
query SQL: 

CREATE TABLE `hospital_jqm`.`users` (

`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , 
`name` VARCHAR(80) NOT NULL , 
`surname` VARCHAR(80) NOT NULL , 
`address` VARCHAR(80) NOT NULL , 
`birth_place` VARCHAR(50) NOT NULL , 
`province` VARCHAR(5) NOT NULL , 
`birth_date` DATE NOT NULL , 
`sex` ENUM( 'male', 'female') NOT NULL DEFAULT '''male''', 
`case` ENUM( 'politrauma', 'cardiologico', 'neurologico') NOT NULL DEFAULT  '''politrauma''' 
) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci; 

Messaggio di MySQL: 

#1067 - Invalid default value for 'sex' 

このテーブルを作成しようとしましたが、このエラーが発生しました。なぜですか?エラーはどこですか?mysql列挙型エラー:1067間違いは何ですか?

答えて

2

(リテラル値に含ま引用符で)それは'male'する必要があります。

1

あなたはそこに余分な引用符を持っています。これに変更します

sex ENUM('male', 'female') NOT NULL DEFAULT 'male' 

あなたはリストになかったデフォルト値を、指定されたすなわち'male'ではなく、代わりに'''male'''male

1

は...私のために働いた罰金以下のトリプルquotes..theを使用しないようにしよう

CREATE TABLE `users` (

`id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY , 
`name` VARCHAR(80) NOT NULL , 
`surname` VARCHAR(80) NOT NULL , 
`address` VARCHAR(80) NOT NULL , 
`birth_place` VARCHAR(50) NOT NULL , 
`province` VARCHAR(5) NOT NULL , 
`birth_date` DATE NOT NULL , 
`sex` ENUM( 'male', 'female') NOT NULL DEFAULT 'male', 
`case` ENUM( 'politrauma', 'cardiologico', 'neurologico') NOT NULL DEFAULT  'politrauma' 
) ENGINE = MYISAM CHARACTER SET utf8 COLLATE utf8_general_ci; 
関連する問題