语法错误或访问冲突:1064 Symfony中的SQL错误

Abd*_*Abo 5 symfony doctrine-migrations symfony4

当我运行comand时,php bin/console doctrine:migration:migrate我得到了这个错误,我不知道从哪里来。

命令行错误:在AbstractMySQLDriver.php第99行中:

执行'CREATE TABLE用户(id INT AUTO_INCREMENT NOT NULL,电子邮件VARCHAR(180)NOT NU LL,角色JSON NOT NULL,密码VARCHAR(255)NOT NULL,唯一索引UNIQ_8D93D649E7927C74(email),主键(id)时发生异常)默认字符集utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB':

SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册以在第1行的'JSON NOT NULL,password VARCHAR(255)NOT NULL,UNIQUE INDEX UNIQ_8D93D649E7927C7'附近使用正确的语法

在PDOConnection.php第109行中:

SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册以在第1行的'JSON NOT NULL,password VARCHAR(255)NOT NULL,UNIQUE INDEX UNIQ_8D93D649E7927C7'附近使用正确的语法

在PDOConnection.php第107行中:

SQLSTATE [42000]:语法错误或访问冲突:1064 SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册以在第1行的'JSON NOT NULL,password VARCHAR(255)NOT NULL,UNIQUE INDEX UNIQ_8D93D649E7927C7'附近使用正确的语法

我的环境 我的环境

小智 6

安德烈是对的。您要么必须升级数据库,要么(更容易地)配置symfony以使用较低版本的MySQL。

config/packages/doctrine.yaml

doctrine:
dbal:
    # configure these for your database server
    driver: 'pdo_mysql'
    server_version: '5.6'
Run Code Online (Sandbox Code Playgroud)

在这里,您可以找到具有MySQL和MariaDB兼容性的表。