Ho controllato la documentazione fornita da Oracle e trovato un modo per modificare un vincolo senza perdere la tabella. Il problema è che si modifica erroneamente in quanto non riconosce la parola chiave.Cercando di modificare un vincolo in PostgreSQL
Utilizzo di EMS SQL Manager per PostgreSQL.
Alter table public.public_insurer_credit MODIFY CONSTRAINT public_insurer_credit_fk1
deferrable, initially deferred;
ho potuto risolvere esso facendo cadere il vincolo utilizzando:
ALTER TABLE "public"."public_insurer_credit"
DROP CONSTRAINT "public_insurer_credit_fk1" RESTRICT;
ALTER TABLE "public"."public_insurer_credit"
ADD CONSTRAINT "public_insurer_credit_fk1" FOREIGN KEY ("branch_id", "order_id", "public_insurer_id")
REFERENCES "public"."order_public_insurer"("branch_id", "order_id", "public_insurer_id")
ON UPDATE CASCADE
ON DELETE NO ACTION
DEFERRABLE
INITIALLY DEFERRED;
Perché stai controllando la documentazione Oracle (e taggando questa domanda con 'plsql') quando stai usando PostgreSQL? Qual è l'errore esatto (quale parola chiave non è riconosciuta)? – Bruno
ERRORE: errore di sintassi in prossimità o "MODIFICA" LINE 1: Modificare tavolo public.public_insurer_credit MODIFICARE VINCOLO p ... ^ (0,359 sec) – MISMajorDeveloperAnyways
Controllo documentazione Oracle per Postgres, e quindi accusando Postgres. Epico. –