18 lines
803 B
SQL
18 lines
803 B
SQL
ALTER TABLE transaction DROP CONSTRAINT chk_transaction_sides;
|
|
|
|
ALTER TABLE transaction
|
|
DROP COLUMN envelope_source_id,
|
|
DROP COLUMN envelope_dest_id,
|
|
ADD COLUMN envelope_id INTEGER REFERENCES envelope(id);
|
|
|
|
ALTER TABLE transaction ADD CONSTRAINT chk_transaction_sides CHECK (
|
|
(account_source_id IS NOT NULL AND instrument_source_id IS NOT NULL AND quantite_source IS NOT NULL
|
|
OR account_source_id IS NULL AND instrument_source_id IS NULL AND quantite_source IS NULL)
|
|
AND
|
|
(account_dest_id IS NOT NULL AND instrument_dest_id IS NOT NULL AND quantite_dest IS NOT NULL
|
|
OR account_dest_id IS NULL AND instrument_dest_id IS NULL AND quantite_dest IS NULL)
|
|
AND
|
|
(account_source_id IS NOT NULL OR account_dest_id IS NOT NULL)
|
|
);
|
|
|
|
DROP TABLE IF EXISTS envelope_snapshot;
|