Как создать таблицы в необработанном запросе laravel? - PullRequest
0 голосов
/ 23 июня 2019

Я пытаюсь создать новую БД, которая успешно создается, и некоторые таблицы в этой БД не создаются.Что не так с этим запросом?Он говорит:

QueryException в строке Connection.php 770: SQLSTATE [42000]: синтаксическая ошибка или нарушение прав доступа: 1064 В синтаксисе SQL имеется ошибка;обратитесь к руководству, соответствующему вашей версии сервера MariaDB, чтобы узнать правильный синтаксис для использования рядом с «CREATE TABLE activities (id int (10) UNSIGNED NOT NULL») в строке 3 (SQL: CREATE DATABASE institu_70 SET CHARACTER SET utf8 COLLATE utf8_general_ci;

CREATE TABLE activities (id int (10) НЕ ПОДПИСАНО НЕ ПУСТО, name varchar (150) COLLATE utf8_unicode_ci NOT NULL, created_at метка времени NULL DEFAULT NULL, updated_at метка времени NULL DEFAULTNULL, deleted_at отметка времени NULL ПО УМОЛЧАНИЮ NULL) ENGINE = MySAM CHARSET ПО УМОЛЧАНИЮ = utf8 COLLATE = utf8_unicode_ci;)

DB::connection('rc')->statement("
    CREATE DATABASE institution_$institutionId CHARACTER SET utf8 COLLATE utf8_general_ci;

    CREATE TABLE `activities` (
      `id` int(10) UNSIGNED NOT NULL,
      `name` varchar(150) COLLATE utf8_unicode_ci NOT NULL,
      `created_at` timestamp NULL DEFAULT NULL,
      `updated_at` timestamp NULL DEFAULT NULL,
      `deleted_at` timestamp NULL DEFAULT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
    ");

1 Ответ

0 голосов
/ 23 июня 2019

удалить‍‍ NULL после отметки времени

   CREATE TABLE `activities` (
      `id` int(10) UNSIGNED NOT NULL,
      `name` varchar(150) COLLATE utf8_unicode_ci NOT NULL,
      `created_at` timestamp DEFAULT NULL,
      `updated_at` timestamp DEFAULT NULL,
      `deleted_at` timestamp DEFAULT NULL
    ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...