Kan en fremmednøkkel være null Postgres?
Kan en fremmednøkkel være null Postgres?

Video: Kan en fremmednøkkel være null Postgres?

Video: Kan en fremmednøkkel være null Postgres?
Video: How To Add FOREIGN KEY in Postgresql 2024, November
Anonim

INSERT INTO product VALUES (11, 'for Joe', 1); SETTE INN I produktVERDIER (22, 'for alle', NULL ); Det er helt lovlig å ha en nullbar fremmednøkkel kolonne.

Spørsmålet er også, kan en fremmednøkkel være null?

EN fremmednøkkel gjør tabellen avhengig av en annen tabell kalt en overordnet tabell. EN fremmednøkkel inneholder null verdier kan ikke samsvare med verdiene til en forelder nøkkel , siden en forelder nøkkel per definisjon kan har ingen null verdier. Imidlertid, a null fremmednøkkel verdien er alltid gyldig, uavhengig av verdien av noen av dens ikke- null deler.

I tillegg, hvordan legger jeg til en fremmednøkkel i PostgreSQL? LEGGE TIL CONSTRAINT constraint_name UTENLANDSKE NØKKEL (c1) REFERANSER overordnet_tabell (p1); En siste note når du vil legge til en fremmednøkkel begrensning med PÅ SLETT CASCADE til eksisterende tabell, må du gjøre følgende trinn: Slipp eksisterende fremmednøkkel begrensning. Legge til en ny fremmednøkkel begrensning med ON DELETE CASCADE handling.

Så kan en fremmednøkkel være null mysql?

5 svar. NULL inn fremmednøkler er helt akseptable. Håndtere NULLer i fremmednøkler er vanskelig, men det betyr ikke at du endrer slike kolonner til IKKE NULL og sett inn dummy ("N/A", "Ukjent", "Ingen verdi" osv.) poster i referansetabellene dine.

Er fremmednøkler nødvendig?

Siden formålet med fremmed nøkkelen er å identifisere en bestemt rad med referert tabell, er det vanligvis nødvendig at fremmed nøkkel er lik kandidaten nøkkel i noen rad i primærtabellen, ellers har ingen verdi (NULL-verdien.). Denne regelen kalles en referanseintegritetsbegrensning mellom de to tabellene.

Anbefalt: