【问题标题】:orphanedRowAction on TypeORM with migrations带有迁移的 TypeORM 上的 orphanedRowAction
【发布时间】:2021-10-26 18:34:24
【问题描述】:

我在 TypeORM 版本 0.2.30 (2021-01-12) 上使用新功能 orphanedRowAction:

@ChildEntity('business')
export default class BusinessGeolocation extends Geolocation {
  @ManyToOne(
    type => Business, business => business.geolocations, {
      onDelete: 'CASCADE',
      orphanedRowAction: "delete" // NEW
    })
  business!: Business;
}

当我使用 synchronized = true 启动我的应用程序时,效果很好(我可以删除孤立行)。但是,我无法使用 migrations=true 删除孤立行。当我使用迁移启动我的应用程序时,我找不到 sql 表达式有什么变化。

Error: Run: error code 19: FOREIGN KEY constraint failed

query failed:  DELETE FROM "forms" WHERE "formId" = ? -- PARAMETERS: [1]

orphanedRowAction: "delete" 时 sql 表达式有什么变化?

【问题讨论】:

    标签: node.js typeorm


    【解决方案1】:

    事实证明,由于某种原因,我无法获得正确的 sql 表达式输出,然后我重置了所有数据,对于那些将使用迁移创建表的人来说,主要变化似乎是这个:

    ON DELETE NO ACTION ---> ON DELETE ON CASCADE
    

    【讨论】:

      猜你喜欢
      • 2021-05-23
      • 2021-12-06
      • 2020-06-16
      • 2021-05-23
      • 2021-05-23
      • 1970-01-01
      • 2019-11-17
      • 2020-10-30
      • 1970-01-01
      相关资源
      最近更新 更多