InvoiceItem, OrderItem, DeliveryOrderItem: diverse Fremdschlüssel eingeführt
[kivitendo-erp.git] / sql / Pg-upgrade2 / orderitems_delivery_order_items_invoice_foreign_keys.sql
1 -- @tag: orderitems_delivery_order_items_invoice_foreign_keys
2 -- @description: Fremdschlüssel für Tabellen oderitems, delivery_order_items, invoice
3 -- @depends: release_3_0_0
4 -- @charset: utf-8
5 UPDATE orderitems           SET pricegroup_id = NULL WHERE pricegroup_id = 0;
6 UPDATE delivery_order_items SET pricegroup_id = NULL WHERE pricegroup_id = 0;
7 UPDATE invoice              SET pricegroup_id = NULL WHERE pricegroup_id = 0;
8
9 UPDATE orderitems           SET project_id = NULL WHERE project_id NOT IN (SELECT id FROM project);
10 UPDATE delivery_order_items SET project_id = NULL WHERE project_id NOT IN (SELECT id FROM project);
11 UPDATE invoice              SET project_id = NULL WHERE project_id NOT IN (SELECT id FROM project);
12
13 ALTER TABLE orderitems           ADD FOREIGN KEY (trans_id)        REFERENCES oe            (id);
14 ALTER TABLE orderitems           ADD FOREIGN KEY (project_id)      REFERENCES project       (id);
15 ALTER TABLE orderitems           ADD FOREIGN KEY (pricegroup_id)   REFERENCES pricegroup    (id);
16 ALTER TABLE orderitems           ADD FOREIGN KEY (price_factor_id) REFERENCES price_factors (id);
17
18 ALTER TABLE delivery_order_items ADD FOREIGN KEY (pricegroup_id)   REFERENCES pricegroup    (id);
19
20 ALTER TABLE invoice              ADD FOREIGN KEY (project_id)      REFERENCES project       (id);
21 ALTER TABLE invoice              ADD FOREIGN KEY (pricegroup_id)   REFERENCES pricegroup    (id);
22 ALTER TABLE invoice              ADD FOREIGN KEY (price_factor_id) REFERENCES price_factors (id);