@m4f1

Mysql mariadb где ошибочка?

Добрый день, помогите исправить ошибку в запросе к БД, на хостинге стоит mariadb, и она ругается на sql запрос с другой системы (скорее обычный mysql).

Сам запрос:
CREATE TABLE `towers` (
  `id` bigint(20) UNSIGNED NOT NULL,
  `user_id` int(11) NOT NULL,
  `bet` double(255,2) NOT NULL,
  `bombs` int(11) NOT NULL,
  `currency` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL,
  `field` json NOT NULL,
  `revealed` json NOT NULL,
  `coeff` double(255,2) NOT NULL DEFAULT '0.00',
  `status` int(11) NOT NULL DEFAULT '0',
  `created_at` timestamp NULL DEFAULT NULL,
  `updated_at` timestamp NULL DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;


Ошибка:
#1064 - У вас ошибка в запросе. Изучите документацию по используемой версии MariaDB на предмет корректного синтаксиса около 'json NOT NULL,
  `revealed` json NOT NULL,
  `coeff` double(255,2) NOT NULL DE' на строке 11
  • Вопрос задан
  • 958 просмотров
Решения вопроса 1
Berkutman
@Berkutman
MariaDB 10.2 supported JSON. (Alpha version. Not recommended by Maria to production server. Only testing.)

MariaDB 10.1 do not support JSON

Проверь версию mariadb у себя на хостинге.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
@d-stream
Готовые решения - не подаю, но...
Вот вообще не знаю про mariadb,
но varchar может иметь default 'что-то литеральное (в кавычках)'
а int, double - таки должны иметь значения соответствующих типов, а не строки из символов
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы