Basis van databases

Aan welke voorwaarde moet in een tabel van een relationele database de kolom (of combinatie van kolommen) voldoen die als primaire sleutel is aangewezen?

  1. ADe waarden moeten getallen zijn
  2. BHet moet de eerste kolom van de tabel zijn
  3. CDe waarden mogen binnen de tabel niet dubbel voorkomen en mogen geen NULL bevatten
Antwoord en toelichting tonen

Antwoord: C. De waarden mogen binnen de tabel niet dubbel voorkomen en mogen geen NULL bevatten

Een primaire sleutel is een kolom of combinatie van kolommen waarmee één rij in een tabel uniek wordt geïdentificeerd. De waarden mogen daarom niet gelijk zijn aan die van een andere rij (uniciteit), en ook NULL, dat een onbekende waarde aangeeft, is niet toegestaan (NOT NULL). Als in een SQL-statement CREATE TABLE een PRIMARY KEY wordt opgegeven, dwingt het DBMS (databasemanagementsysteem) deze twee beperkingen af, en elke bewerking die een dubbele waarde of NULL probeert in te voegen, mislukt met een foutmelding. Een primaire sleutel kan getallen bevatten, zoals personeelsnummers, maar ook tekenreeksen, en er is geen regel voor de positie van de kolom. Een minimale combinatie van kolommen die een rij uniek kan identificeren, heet een kandidaatsleutel, en de primaire sleutel is de sleutel die uit de kandidaatsleutels wordt gekozen.

Dit onderwerp oefenen Naar de onderwerppagina

Meer vragen over Basis van databases

  1. In de tabel Medewerker (MedewerkerNr, Email, Naam, Afdeling) zijn MedewerkerNr en Email voor elke medewerker verschillend en nooit NULL. Naam en Afdeling kunnen gelijk zijn aan die van andere medewerkers. Welk antwoord noemt alle kandidaatsleutels van deze tabel?
  2. De tabel Inschrijving (StudentNr, VakNr, Cijfer) legt vast welke student welk vak heeft gevolgd en met welk cijfer. Eén student volgt meerdere vakken, en één vak wordt door meerdere studenten gevolgd. Als dezelfde student zich nooit twee keer voor hetzelfde vak inschrijft, wat is dan een geschikte primaire sleutel voor deze tabel?
  3. De primaire sleutel van de tabel Klant (KlantID, Naam) is KlantID, en KlantID in de tabel Bestelling (BestelID, KlantID) is gedefinieerd als vreemde sleutel die verwijst naar KlantID in de tabel Klant. De tabel Klant bevat alleen de rijen met KlantID 'C1' en 'C2'. Wat gebeurt er als in deze toestand INSERT INTO Bestelling VALUES ('O9', 'C5') wordt uitgevoerd?
  4. SQL-statements worden ingedeeld in de datadefinitietaal (DDL), de datamanipulatietaal (DML) en de datacontroletaal (DCL). Welke wordt als DDL ingedeeld?
  5. De tabel Product bevat vijf rijen (Naam, Prijs): (Pen, 120), (Schrift, 250), (Gum, 80), (Map, 300), (Liniaal, 150). Welk antwoord geeft in volgorde de rijen die SELECT Naam FROM Product WHERE Prijs >= 150 ORDER BY Prijs DESC teruggeeft?