После некоторых манипуляций, хочу установить поле id автоинкрементом
делаю так
Schema::table('users', function (Blueprint $table) {
$table->primary('id')->change();
});
Schema::table('users', function (Blueprint $table) {
$table->increments('id')->change();
});
Однако пулчаю ошибку
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '0' for key 'PRIMARY' (SQL: alter table `users` add primary key `users_id_primary`(`id`))
Если делать без $table->primary то вот такое:
SQLSTATE[42000]: Syntax error or access violation: 1075 Incorrect table definition; there can be only one auto column and it must be defined as a key (SQL: ALTER TABLE users CHANGE id id INT UNSIGNED AUTO_INCREMENT NOT NULL)
Подскажите, как правильно перевести поле в автоинкремент?
PS
Если выполнить sql из ошибки
alter table `users` add primary key `users_id_primary`(`id`)
То получаю ошибку Invalid default value fo created_at
DDL таблицы
CREATE TABLE `users` (
`email` varchar(255) NOT NULL,
`password` varchar(255) NOT NULL,
`remember_token` varchar(255) NOT NULL,
`role` varchar(255) NOT NULL,
`created_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`updated_at` timestamp NOT NULL DEFAULT '0000-00-00 00:00:00',
`id` int(11) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8