А Вы точно в psql это пробуете (может, проблема в используемом клиенте)? И да, если Вам нужна помощь — "картинки" текстов показывать не нужно.
В psql тоже пробовал, тоже такая же ошибка
Показали бы Вы текстом... И какие это версии psql и сервера PostgreSQL? Это полный дамп, кстати (там, кажется, используются custom types — они точно ранее созданы)?
CREATE TABLE public.action_transaction ( id uuid NOT NULL, platform_id character varying(50) NOT NULL, sponsor_id uuid NOT NULL, sub_type public.action_transaction_sub_type NOT NULL, completion_status public.action_transaction_completion_status, modality public.transaction_modality NOT NULL, transacting_service character varying(50) NOT NULL, event_date timestamp with time zone NOT NULL, campaign_id character varying(50), source_campaign_txn_id uuid, action_code character varying(50), action_card_id uuid NOT NULL, action_group_id uuid, action_id uuid, created_at timestamp with time zone DEFAULT now() NOT NULL, updated_at timestamp with time zone DEFAULT now() NOT NULL, CONSTRAINT check_action_group_id_for_subtype CHECK ((((sub_type <> ALL (ARRAY['action_group_started'::public.action_transaction_sub_type, 'action_group_joined'::public.action_transaction_sub_type, 'action_group_completed'::public.action_transaction_sub_type, 'action_group_expired'::public.action_transaction_sub_type, 'action_completed'::public.action_transaction_sub_type])) AND (action_group_id IS NULL)) OR ((sub_type = ANY (ARRAY['action_group_started'::public.action_transaction_sub_type, 'action_group_joined'::public.action_transaction_sub_type, 'action_group_completed'::public.action_transaction_sub_type, 'action_group_expired'::public.action_transaction_sub_type, 'action_completed'::public.action_transaction_sub_type])) AND (action_group_id IS NOT NULL)))), CONSTRAINT check_action_id_for_subtype CHECK ((((sub_type <> 'action_completed'::public.action_transaction_sub_type) AND (action_id IS NULL)) OR ((sub_type = 'action_completed'::public.action_transaction_sub_type) AND (action_id IS NOT NULL)))), CONSTRAINT check_completion_status_for_subtype CHECK ((((sub_type <> ALL (ARRAY['action_completed'::public.action_transaction_sub_type, 'action_group_completed'::public.action_transaction_sub_type, 'action_card_completed'::public.action_transaction_sub_type])) AND (completion_status IS NULL)) OR ((sub_type = ANY (ARRAY['action_completed'::public.action_transaction_sub_type, 'action_group_completed'::public.action_transaction_sub_type, 'action_card_completed'::public.action_transaction_sub_type])) AND (completion_status IS NOT NULL)))) );
Какая-то ерунда получается (ошибка странная / неадекватная коду). И само по себе это работает (я там минимально изменил, чтобы типы не создавать) в любой поддерживаемой версии PostgreSQL: https://dbfiddle.uk/?rdbms=postgres_9.5&fiddle=d4ee2ce1c75df4c91fe5465049c24f11
Спасибо, буду разбираться
Обсуждают сегодня