30 lines
917 B
SQL
30 lines
917 B
SQL
-- Add timestamps to zbggcampaign so UI can show "last change" times.
|
|
-- This table is append-only (history is preserved by inserting new rows),
|
|
-- so zlins_dttm is the time the assignment row was created.
|
|
|
|
ALTER TABLE zbggcampaign
|
|
ADD COLUMN IF NOT EXISTS zlins_dttm TIMESTAMPTZ;
|
|
|
|
ALTER TABLE zbggcampaign
|
|
ADD COLUMN IF NOT EXISTS zlupd_dttm TIMESTAMPTZ;
|
|
|
|
-- Backfill existing rows (no historical source available). This prevents NULLs
|
|
-- and makes the API stable after deploying code that selects these columns.
|
|
UPDATE zbggcampaign
|
|
SET
|
|
zlins_dttm = COALESCE(zlins_dttm, now()),
|
|
zlupd_dttm = COALESCE(zlupd_dttm, zlins_dttm, now());
|
|
|
|
ALTER TABLE zbggcampaign
|
|
ALTER COLUMN zlins_dttm SET DEFAULT now();
|
|
|
|
ALTER TABLE zbggcampaign
|
|
ALTER COLUMN zlupd_dttm SET DEFAULT now();
|
|
|
|
ALTER TABLE zbggcampaign
|
|
ALTER COLUMN zlins_dttm SET NOT NULL;
|
|
|
|
ALTER TABLE zbggcampaign
|
|
ALTER COLUMN zlupd_dttm SET NOT NULL;
|
|
|