Symfony |如何修复迁移MySQL语法错误

时间:2019-05-04 15:22:35

标签: mysql symfony doctrine database-migration

我正在创建一个登录/注册系统,因为我以前从未做过。我使用Symfony框架来关注他们的文档(https://symfony.com/doc/current/security.html)。建议我通过

创建一个用户实体
  

php bin /控制台make:user

这将创建我的用户实体和存储库。

但是,当我创建迁移并通过运行来迁移时:

  

php bin /控制台d:m:m

它向我返回此语法错误:

{time: "2019-05-04T15:17:24.571Z"} "2019-05-04T15:17:23.107Z"

在错误消息中找到了返回语法错误的完整MySQL表创建,但是,这本身就是查询:

Migration 20190502143453 failed during Execution. Error An exception occurred while executing 'CREATE TABLE user (id INT AUTO_INCREMENT NOT NULL, username VARCHAR(180) NOT NULL, roles JSON NOT NULL, password VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_8D93D649F85E0677 (username), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB':

SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use
 near 'JSON NOT NULL, password VARCHAR(255) NOT NULL, UNIQUE INDEX UNIQ_8D93D649F85E067' at line 1

我已经按照步骤进行了迁移,但是我不确定为什么会出现语法错误,因为它对我来说看起来是正确的。 SQL是自动生成的。

如果有人知道如何解决此语法错误,将不胜感激。

如果需要更多信息,我很乐意提供这些信息。

最诚挚的问候,

史蒂夫。

0 个答案:

没有答案