Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Продолжение старого архива (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/)
-   -   Странности Mysql иль мои (https://www.otvetnemail.ru/prodolzhenie-starogo-arhiva-804/strannosti-mysql-il-moi-383781/)

Guest 16.10.2011 14:04

Странности Mysql иль мои
 
В месте с php изучаю мускул по книге в ней имеется пример создания таблицы, он почемуто не работает. (Скорее всего расщитан на другую версию мускула)А вот и он, CREATE TABLE user ( usernumber MEDIUMINT(10) DEFAULT '0' NOT NULL AUTO_INCREMENT, userid VARCHAR(8) BINARY NOT NULL, userpassword VARCHAR(20) BINARY NOT NULL, username VARCHAR(30) NOT NULL, userposition VARCHAR(50) NOT NULL, useremail VARCHAR(50) NOT NULL, userprofile TEXT NOT NULL, PRIMARY KEY (userid), UNIQUE usernumber (usernumber) );Выдает ошибку: ERROR 1067 (42000): Invalid default value for 'usernumber' Ища по форумам в чем дело нашел что вместо '0' нужно написать Null, я так и сделал. Все заработало, но (из книги)" NULL или NOT NULL Поля NOT NULL не допускают NULL-значений. Поля, объявленныекак NULL, сохраняют значение, заданное по умолчанию, в случаеесли в поле записывается NULL. Если значение по умолчанию не указано, то в поле простосохраняется NULL. Если атрибут не задан, то предполагается NULL"Вопрос. Почему поле объявленное как нул допускает оный ? Как я понял из форумов в моем случае Default вообще лучше не устанавливать, AUTO_INCREMENT сам считает с нуля.


Часовой пояс GMT, время: 19:48.


© www.otvetnemail.ru - Форум вопросов и ответов.