vanilophp / demo

Vanilo Demo Application
https://vanilo.io/docs/
190 stars 54 forks source link

Error en php artisan migrate --seed estoy usando MySql #16

Closed cfrisly closed 5 years ago

cfrisly commented 5 years ago

me muestra el siguiente error:

Illuminate\Database\QueryException : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes (SQL: alter table users add unique users_email_unique(email))

at /home/frisly/larapro/vendor/laravel/framework/src/Illuminate/Database/Connection.php:664 660| // If an exception occurs when attempting to run a query, we'll format the error 661| // message to include the bindings with SQL, which will make this exception a 662| // lot more helpful to the developer instead of just the database's errors. 663| catch (Exception $e) {

664| throw new QueryException( 665| $query, $this->prepareBindings($bindings), $e 666| ); 667| } 668|

Exception trace:

1 PDOException::("SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 767 bytes") /home/frisly/larapro/vendor/laravel/framework/src/Illuminate/Database/Connection.php:458

2 PDOStatement::execute() /home/frisly/larapro/vendor/laravel/framework/src/Illuminate/Database/Connection.php:458

Please use the argument -v to see more details.

fulopattila122 commented 5 years ago

This is a well known Laravel problem: https://laravel-news.com/laravel-5-4-key-too-long-error

But they key length was set in this demo project, so I guess you're using the Vanilo framework in an application and you have to add:

Schema::defaultStringLength(191);

in your AppServiceProvider::boot() method.

Ps. please use English.

cfrisly commented 5 years ago

Thanks, true solved now I get this error, but I'm not using MariaDB

In Connection.php line 664:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'json not null, custom_properties js on not null, responsive_images json not n' at line 1 (SQL: create table media (id int unsigned not null auto_ increment primary key, model_type varchar(191) not null, model_id bigint unsigned not null, collection_name v archar(191) not null, name varchar(191) not null, file_name varchar(191) not null, mime_type varchar(191) nul l, disk varchar(191) not null, size int unsigned not null, manipulations json not null, custom_properties j son not null, responsive_images json not null, order_column int unsigned null, created_at timestamp null, up dated_at timestamp null) default character set utf8mb4 collate 'utf8mb4_unicode_ci')

In Connection.php line 452:

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'json not null, custom_properties js on not null, responsive_images json not n' at line 1

fulopattila122 commented 5 years ago

The doc says:

Database engine: MySQL 5.7 or higher, MariaDB 10.2.7 or higher or PostgreSQL is required

You can check your db engine version with this command: mysql -V (MySQL and MariaDB) or psql - V (Postgres)

fulopattila122 commented 5 years ago

Has the issue been resolved?

fulopattila122 commented 5 years ago

Feel free to reopen if the issue persists.