迁移到 V5 后序列化记录问号而不是值

Posted

技术标签:

【中文标题】迁移到 V5 后序列化记录问号而不是值【英文标题】:Sequelize logging questions marks instead of values after migrating to V5 【发布时间】:2019-11-25 05:14:06 【问题描述】:

从 v4 迁移到 v5 后,Sequelize 在控制台上记录问号,而不是 SQL 查询的值。

例如,这是控制台上显示的内容:

INSERT INTO `Product` (`uid`,`title`,`price`,`isPerishable`,`categoryId`) VALUES (?,?,?,?,?);

这是我的 Sequelize 实例:

db = new Sequelize(
      dialect: 'mysql',
      database: process.env.DB_NAME,
      username: process.env.DB_USER,
      password: process.env.DB_PASS,
      host: process.env.DB_HOST,
      operatorsAliases: operatorsAliases,
      logging: console.log,
    );

在第 4 版之前,值是否正确显示。

我期望记录的内容类似于:

INSERT INTO `Product` (`uid`,`title`,`price`,`isPerishable`,`categoryId`) VALUES (DEFAULT,'iPhone X',999.99,false,'1');

【问题讨论】:

已经resolved in 5.19.0 【参考方案1】:

您仍然会有问号,但您会在查询旁边看到输入。

只需将其添加到 Sequalize 配置中

logQueryParameters: 真

【讨论】:

以上是关于迁移到 V5 后序列化记录问号而不是值的主要内容,如果未能解决你的问题,请参考以下文章

Laravel 5.5 升级到 5.5.42 后遇到的 Cookie 序列化问题

C#序列化实体成XML后多了一个问号

将数据从MySQL迁移到Oracle的注意事项

为啥查询不返回值?

ABP 日志审计 返回值开启 循环引用序列化异常 Self referencing loop detected

从 Django 表单序列化