我有一个symfony项目(2.8版本),它运行以下捆绑包:
索纳塔行政包
索纳塔用户包
fos用户包
此网站与mysql数据库(5.6版)链接。
当我想用以下命令更新数据库方案时,我遇到了条令问题:
php app/console doctrine:schema:update --force
因为innodb引擎和我的数据库不支持varchar(255)类型,所以我将所有varchar的长度减少到191,现在它可以工作了。
我现在的问题是,条令想要生成我无法控制的表(显然与acl链接),如下所示:
CREATE TABLE acl_classes (id INT UNSIGNED AUTO_INCREMENT NOT NULL, class_type VARCHAR(200) NOT NULL, UNIQUE INDEX UNIQ_69DD750638A36066 (class_type), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci ENGINE = InnoDB;
如何减少类类型的长度以应用varchar(191)?
提前谢谢你。
1条答案
按热度按时间mnowg1ta1#
您可以在/vendor/symfony/security acl/dbal/schema.php第70行中修复https://github.com/symfony/security-acl/blob/master/dbal/schema.php#l70
更改为
或者你可以试试
utf8mb4
编码: