میخوام مایگریشن هایی که دارم رو اجرا کنم اما خطا میده و دلیلش هم نمیدونم چیه اگه کمک کنید به حلش ممنون میشم :
Illuminate\Database\QueryException : SQLSTATE[42000]: Syntax error or access violation: 1071 Specified key was too long; max key length is 1000 bytes (SQL: alter table `shoppingcart` add primary key `shoppingcart_identifier_instance_primary`(`identifier`, `instance`))
at F:\laravel-project\digikala2\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 1000 bytes")
F:\laravel-project\digikala2\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458
2 PDOStatement::execute()
F:\laravel-project\digikala2\vendor\laravel\framework\src\Illuminate\Database\Connection.php:458
Please use the argument -v to see more details.
و مایگریشنی هم که مشکل داره به شکل زیر است :
public function up()
{
Schema::create(config('cart.database.table'), function (Blueprint $table) {
$table->string('identifier');
$table->string('instance');
$table->longText('content');
$table->nullableTimestamps();
$table->primary(['identifier', 'instance']);
});
}سلام
برو
ProjectName>>app>>providers>>AppServiceProvider.php
کدهای زیر را اظافه کن :
```php
1-
use Illuminate\Support\Facades\Schema;
2-
public function boot()
{
Schema::defaultStringLength(191);
}
مشکل از جای دیگه هستش از این کد نیست من همش موقعی که پروژه ای رو ایجاد میکنم این که قرار میدم این بار مشکل از جای دیگه هستش