2012-02-09 2 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' 

Я попытался создать эту таблицу, но я получил эту ошибку.why? Где ошибка?mysql enum error: 1067 Какая ошибка?

ответ

1

У вас есть дополнительные кавычки. Изменения к этому:

sex ENUM('male', 'female') NOT NULL DEFAULT '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; 
Смежные вопросы