mirror of
https://gitlab.com/mbugroup/lti-api.git
synced 2026-05-20 21:41:55 +00:00
33 lines
807 B
SQL
33 lines
807 B
SQL
-- Create sequence for transfer laying movement number
|
|
CREATE SEQUENCE transfer_laying_seq START
|
|
WITH
|
|
1 INCREMENT BY 1 MINVALUE 1 MAXVALUE 99999 NO CYCLE;
|
|
|
|
-- Set sequence starting value based on existing data (if any)
|
|
-- This prevents duplicate movement numbers if there's already data
|
|
DO $$ DECLARE max_existing INTEGER;
|
|
|
|
BEGIN
|
|
-- Check if table exists and has data
|
|
IF EXISTS (
|
|
SELECT 1
|
|
FROM information_schema.tables
|
|
WHERE
|
|
table_schema = 'public'
|
|
AND table_name = 'transfer_to_layings'
|
|
) THEN
|
|
-- Get max ID from existing records
|
|
SELECT COALESCE(MAX(id), 0) INTO max_existing
|
|
FROM transfer_to_layings;
|
|
|
|
-- Set sequence to start after the highest existing ID
|
|
IF max_existing > 0 THEN PERFORM setval (
|
|
'transfer_laying_seq',
|
|
max_existing
|
|
);
|
|
|
|
END IF;
|
|
|
|
END IF;
|
|
|
|
END $$; |