-- ============================================================ -- P3.1: propagation 克隆扩繁批次 —— 修正旧 DDL(规格 v2.2) -- ------------------------------------------------------------ -- 幂等。bre_propagation 表已存在(旧版 DDL),create_all 不重建, -- 此处焊写修正: -- A2 产出物:produced_germplasm_id FK→bre_germplasm(旧)→ 删除, -- 改为 produced_clone_id FK→bre_clone(沿用原 clone 不新建); -- A3 砧木: rootstock_id FK→bre_germplasm(旧)→ 改指 bre_rootstock。 -- ============================================================ ALTER TABLE bre_propagation DROP CONSTRAINT IF EXISTS fk_propagation_germplasm; ALTER TABLE bre_propagation DROP COLUMN IF EXISTS produced_germplasm_id; ALTER TABLE bre_propagation ADD COLUMN IF NOT EXISTS produced_clone_id integer REFERENCES bre_clone(id); CREATE INDEX IF NOT EXISTS ix_bre_propagation_produced_clone_id ON bre_propagation(produced_clone_id); ALTER TABLE bre_propagation DROP CONSTRAINT IF EXISTS fk_propagation_rootstock; ALTER TABLE bre_propagation ADD CONSTRAINT fk_propagation_rootstock FOREIGN KEY (rootstock_id) REFERENCES bre_rootstock(id);