Doctrine2 YAML模式 - 如何在模式中心定义主键?

时间:2013-11-08 17:59:55

标签: symfony doctrine-orm yaml

我每天使用Doctrine将远程CSV导入MySQL。远程CSV在架构的中心中具有主键,而不是在开头或结尾。

这似乎使得无法使用doctrine将此“id”指定为主键。我必须保留这个主键以进行匹配。

    UKtradestransaction:
      type: entity
      repositoryClass: UktradesTransactionRepository
      table: uktrades_transactions
      fields:
        owner_id:
          type: integer
          length: 9
          nullable: true
        security_id:
          type: integer
          length: 9
        id:   # THIS NEEDS TO BE THE PRIMARY KEY
          type: integer
          length: 12
        exercise_price_uk:
          type: decimal
          length: 15
          scale: 4
          nullable: true
        update_date:
          type: date
          nullable: true
      id:
        id:  # THIS WILL NOT WORK 
          type: integer
          length: 12
          generator:
              strategy:auto

上述内容无效,因为最终的id字段会复制中心的id。

如何将中间'id'字段指定为主键?有没有办法在'字段'定义中将'id'字段定义为内联主键?

1 个答案:

答案 0 :(得分:1)

我不认为字段的顺序很重要。 Doctrine允许确定字段中的主键或before them,这是我个人更喜欢的语法。只需从字段列表中删除id,它仍将被视为字段。