Помогите написать составной primary key laravel 5.6

Тема в разделе "Базы данных", создана пользователем gramlik, 30 мар 2018.

Модераторы: latteo
  1. gramlik

    gramlik Создатель

    Регистр.:
    18 сен 2017
    Сообщения:
    33
    Симпатии:
    39
    Schema::create('descriptions', function (Blueprint $table) {
    $table->mediumInteger('item_id',true)->unsigned();
    $table->char('tem2_id', 3)->default('');
    $table->mediumText('reason')->nullable();
    $table->char('ltem3_id', 2)->default('');
    $table->primary(['item_id', 'tem2_id','l'tem3_id']);

    $table->primary(['item_id', 'tem2_id','l'tem3_id']); разные варианты этой строчки вызывают синтаксические ошибки , таблица создается , но ключем является только item_id

    если применить DB::unprepared('ALTER TABLE , DROP PRIMARY KEY, ADD PRIMARY KEY то удается добавить только 2 из трех , а про третий пишет ошибку expecting ',' or ')'
     
    Последнее редактирование: 30 мар 2018
  2. Black Hat

    Black Hat

    Регистр.:
    15 май 2015
    Сообщения:
    155
    Симпатии:
    101
    Код:
    'l'tem3_id'
    
    Код:
    'l\'tem3_id'
    
     
  3. gramlik

    gramlik Создатель

    Регистр.:
    18 сен 2017
    Сообщения:
    33
    Симпатии:
    39
    не получается key was too long max key lenght is 767 bytes
     
  4. Black Hat

    Black Hat

    Регистр.:
    15 май 2015
    Сообщения:
    155
    Симпатии:
    101
    Попробуйте удалить таблицу и создать заново.
     
  5. gramlik

    gramlik Создатель

    Регистр.:
    18 сен 2017
    Сообщения:
    33
    Симпатии:
    39
    пробовал удалять и таблицу и всю базу , вся миграция выполняется кроме этой таблицы
    б с некоторыми вариантами не генерируются и другие таблицы. с 2 ключами работает , а с 3 дружить не хочет