Миграция базы данных на основе SQL в Laravel? - PullRequest
0 голосов
/ 14 ноября 2018

Позволяет ли Laravel использовать миграцию базы данных на основе готового SQL, созданного в Workbench, в качестве опции?

Насколько мне известно, теперь предлагается вручную написать файл миграции, следуя указанному формату.

Ответы [ 3 ]

0 голосов
/ 14 ноября 2018

Да, Laravel позволяет использовать готовый SQL, созданный в Workbench.Вам просто нужно подключить ваше приложение Laravel к базе данных, и у вас все должно быть в порядке.

Использование миграций в Laravel не обязательно, но очень полезно для отслеживания версий вашей структуры базы данных.

Поскольку отслеживание структуры вашей базы данных очень важно, я рекомендую вам попробовать один из следующих пакетов для преобразования ваших SQL в миграции Laravel:

  1. MySQL Workbench Export Laravel 5Плагин Migrations - плагин для популярного программного обеспечения MySQL Workbench , написанный на языке Python
  2. Laravel Migration Exporter для Sequel Pro - Пакет для SequelPro, который позволяет генерировать файлы миграции Laravel из существующих таблиц.Написано на языке PHP.

  3. Xethron Laravel Migrations Generator - Инструмент командования Laravel, доступен в виде пакета Laravel

Источник

0 голосов
/ 29 апреля 2019

Несколько недель назад мы выпустили поддержку фреймворка Laravel для нашего визуального редактора Skipper (https://www.skipper18.com). Из вашего вопроса, я полагаю, это может быть очень полезно для вас.

Вы можете импортировать свой проект из базы данных (MySql, Postgres, MSSQL или Sqlite), и вы получите четкую графическую диаграмму, которую вы можете затем автоматически экспортировать в классы моделей и файлы миграции.

Кроме того, вы можете вносить изменения в модель, создавать новые миграции и многократно экспортировать все изменения обратно в файлы Laravel PHP. Все это через удобный интерфейс.

Если вы хотите попробовать, это бесплатно в течение периода бета-тестирования. Вы можете скачать его здесь https://www.skipper18.com/en/download и на начальном экране лицензии приложения выбрать «Laravel Beta license».

0 голосов
/ 14 ноября 2018

Конечно, ничто не мешает вам запускать SQL в процессе миграции. Вы можете использовать DB::statement(), чтобы сделать это внутри up() при миграции.

    \Illuminate\Support\Facades\DB::statement('
        create table application_pages_test
        (
            id int unsigned auto_increment
                primary key,
            application_id tinyint unsigned not null,
            title varchar(64) not null,
            created_at timestamp null,
            updated_at timestamp null
        )
        collate=utf8_unicode_ci
    ;');
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...