I am trying to create a new migration for my users table, I have the following schema:
Schema::create('users', function($t) {
$t->increments('id');
$t->string('username', 16);
$t->string('password', 64);
$t->integer('role', 64);
$t->timestamps();
});
When I try to run php artisan migrate from the terminal, I get the following error:
[Exception]
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: create tableusers(idint unsigne d not null auto_increment primary key,usernamevarchar(16) not null,passwordvarchar(64) no t null,roleint not null auto_increment primary key,created_attimestamp default 0 not null ,updated_attimestamp default 0 not null)) (Bindings: array (
))
The error has something to do with the 'role' field, as when this is removed it seems to run fine.
Thanks in advance for any help or insight.
The second parameter for integer is an auto increment flag.
public function integer($column, $autoIncrement = false, $unsigned = false)
https://github.com/laravel/framework/blob/5.4/src/Illuminate/Database/Schema/Blueprint.php#L510
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With