Quando si crea una tabella in PostgreSQL, i nomi dei vincoli predefiniti verranno assegnati se non forniti:
CREATE TABLE example (
a integer,
b integer,
UNIQUE (a, b)
);
Ma usando ALTER TABLE
per aggiungere un vincolo sembra che un nome sia obbligatorio:
ALTER TABLE example ADD CONSTRAINT my_explicit_constraint_name UNIQUE (a, b);
Ciò ha causato alcune incongruenze nella denominazione dei progetti su cui ho lavorato e richiede le seguenti domande:
C'è un modo semplice per aggiungere un vincolo a una tabella esistente con il nome che avrebbe ricevuto se aggiunto durante la creazione della tabella?
In caso contrario, i nomi predefiniti dovrebbero essere evitati del tutto per evitare incongruenze?