Verskil tussen vreemde sleutel en primêre sleutel

INHOUDSOPGAWE:

Verskil tussen vreemde sleutel en primêre sleutel
Verskil tussen vreemde sleutel en primêre sleutel

Video: Verskil tussen vreemde sleutel en primêre sleutel

Video: Verskil tussen vreemde sleutel en primêre sleutel
Video: Data Modelling 02b Vreemde sleutels bij een 1 op veel associatie 2024, November
Anonim

Die sleutelverskil tussen vreemde sleutel en primêre sleutel is dat vreemde sleutel 'n kolom of 'n stel kolomme is wat verwys na 'n primêre sleutel of 'n kandidaatsleutel van 'n ander tabel terwyl primêre sleutel 'n kolom of 'n stel kolomme is wat gebruik kan word om 'n ry in 'n tabel uniek te identifiseer.

'n Kolom of 'n stel kolomme wat gebruik kan word om 'n ry of 'n stel rye in 'n databasis te identifiseer of toegang te verkry, word 'n sleutel genoem. 'n Primêre sleutel in 'n relasionele databasis is 'n kombinasie van kolomme in 'n tabel wat 'n ry van die tabel uniek identifiseer. Vreemde sleutel in 'n relasionele databasis is 'n veld in 'n tabel wat ooreenstem met die primêre sleutel van 'n ander tabel. Die vreemde sleutel word gebruik om kruisverwysingstabelle te gebruik.

Verskil tussen vreemde sleutel en primêre sleutel - Vergelyking Opsomming
Verskil tussen vreemde sleutel en primêre sleutel - Vergelyking Opsomming
Verskil tussen vreemde sleutel en primêre sleutel - Vergelyking Opsomming
Verskil tussen vreemde sleutel en primêre sleutel - Vergelyking Opsomming

Wat is vreemde sleutel?

Vreemde sleutel is 'n verwysingsbeperking tussen twee tabelle. Dit identifiseer 'n kolom of 'n stel kolomme in een tabel, genoem die verwysingstabel wat verwys na 'n stel kolomme in 'n ander tabel, genoem die verwysde tabel. Die vreemde sleutel of die kolomme in die verwysingstabel moet die primêre sleutel of 'n kandidaatsleutel ('n sleutel wat as die primêre sleutel gebruik kan word) in die verwysde tabel wees. Boonop laat vreemde sleutels data oor verskeie tabelle koppel. Daarom kan die vreemde sleutel nie waardes bevat wat nie verskyn in die tabel waarna dit verwys nie. Dan help die verwysing wat deur die vreemde sleutel verskaf word om inligting in verskeie tabelle te koppel en dit sal noodsaaklik word met genormaliseerde databasisse. Veelvuldige rye in die verwysingstabel kan na 'n enkele ry in die verwysingstabel verwys.

Verskil tussen vreemde sleutel en primêre sleutel
Verskil tussen vreemde sleutel en primêre sleutel
Verskil tussen vreemde sleutel en primêre sleutel
Verskil tussen vreemde sleutel en primêre sleutel

Figuur 01: Buitelandse sleutelkartering

In ANSI SQL-standaard definieer die FOREIGN KEY-beperking vreemde sleutels. Verder is dit moontlik om die vreemde sleutels te definieer wanneer die tabel self geskep word. 'n Tabel kan veelvuldige vreemde sleutels hê, en hulle kan na verskillende tabelle verwys.

Wat is Primêre sleutel?

Primêre sleutel is 'n kolom of 'n kombinasie van kolomme wat 'n ry in 'n tabel van 'n relasionele databasis uniek definieer. 'n Tabel kan hoogstens een primêre sleutel hê. Primêre sleutel dwing die implisiete NIE NULL-beperking af nie. Daarom kan 'n kolom met primêre sleutel nie NULL-waardes in hê nie. Primêre sleutel kan 'n normale kenmerk in die tabel wees wat gewaarborg is om uniek te wees, soos 'n sosiale sekerheidsnommer, of dit kan 'n unieke waarde wees wat deur die databasisbestuurstelsel gegenereer word, soos 'n Globally Unique Identifier (GUID) in Microsoft SQL Server.

Sleutelverskil tussen vreemde sleutel en primêre sleutel
Sleutelverskil tussen vreemde sleutel en primêre sleutel
Sleutelverskil tussen vreemde sleutel en primêre sleutel
Sleutelverskil tussen vreemde sleutel en primêre sleutel

Figuur 02: Primêre sleutel

Verder definieer die PRIMÊRE SLEUTEL-beperking in ANSI SQL Standard primêre sleutels. Dit is ook moontlik om 'n primêre sleutel te definieer wanneer die tabel geskep word. Daarbenewens laat SQL toe dat primêre sleutel uit een of meer kolomme bestaan, en elke kolom wat by die primêre sleutel ingesluit is, word implisiet gedefinieer as NIE NULL nie. Maar sommige databasisbestuurstelsels vereis om die primêre sleutelkolomme uitdruklik NIE NULL te maak nie.

Wat is die verskil tussen vreemde sleutel en primêre sleutel?

Vreemde sleutel teenoor primêre sleutel

Vreemde sleutel is 'n kolom of groep kolomme in 'n relasionele databasistabel wat 'n assosiasie tussen data in twee tabelle verskaf. Primêre sleutel is 'n spesiale relasionele databasistabelkolom of 'n kombinasie van veelvuldige kolomme wat dit moontlik maak om alle tabelrekords uniek te identifiseer.
NULL
Vreemde sleutel aanvaar NULL-waarde. Primêre sleutelwaarde kan nie NULL wees nie.
Aantal sleutels
Tabel kan veelvuldige vreemde sleutels hê. Tabel kan net een primêre sleutel hê.
Duplisering
Tuples kan 'n duplikaatwaarde vir 'n vreemde sleutel-kenmerk hê. Twee tupels in 'n verhouding kan nie duplikaatwaardes vir 'n primêre sleutelkenmerk hê nie.

Opsomming – Buitelandse sleutel vs primêre sleutel

Die verskil tussen vreemde sleutel en primêre sleutel is dat vreemde sleutel 'n kolom of 'n stel kolomme is wat verwys na 'n primêre sleutel of 'n kandidaatsleutel van 'n ander tabel terwyl primêre sleutel 'n kolom of 'n stel kolomme is wat kan gebruik word om 'n ry in 'n tabel uniek te identifiseer.

Aanbeveel: