Databases Flashcards
Hoe wordt een abstracte entiteit beschreven?
Als een entiteitstype met tussen haakjes de attributen
Wat zijn de 2 soorten entiteiten?
abstracte en concrete entiteit
Hoe wordt een concrete entiteit ook wel genoemd?
De instantie van een entiteitstype
Wat is een model?
een vereenvoudigde weergave van de werkelijkheid
Wat is het verschil tussen een primary key en een foreign key in een database?
Een primary key identificeert een unieke rij in een tabel. Een foreign key is een kolom of combinatie van kolommen die verwijzen naar de primary key in een andere tabel om relaties te definiëren.
Leg uit wat een candidate key is en hoe deze zich verhoudt tot een primary key
Een candidate key is een kolom of combinatie van kolommen die uniek een rij kan identificeren. Een van de candidate keys wordt geselecteerd als de primary key.
Wat is het doel van een unique key in een database?
Het doel van een unique key is ervoor te zorgen dat de waarden in een kolom of combinatie van kolommen uniek zijn, zonder dat het een primary key hoeft te zijn. Unique keys kunnen NULL-waarden bevatten.
Waarom is het gebruik van een composite key soms nodig in een tabel?
Een composite key is nodig wanneer een enkele kolom niet uniek genoeg is om een rij te identificeren, maar een combinatie van kolommen dat wel kan.
Hoe wordt een superkey gedefinieerd en hoe verschilt deze van een candidate key?
Een superkey is elke set van attributen die uniek een rij kan identificeren. Een candidate key is een minimale superkey, zonder overbodige attributen.
Geef een voorbeeldsituatie waarin een foreign key wordt gebruikt. Wat is de rol van deze sleutel in dat scenario?
Bijvoorbeeld, in een database met de tabellen Orders en Customers, kan de kolom CustomerID in de tabel Orders als foreign key verwijzen naar de primary key CustomerID in Customers. De foreign key koppelt een bestelling aan een specifieke klant.
Wat gebeurt er als je een foreign key waarde invoert die niet overeenkomt met een primary key in de gerelateerde tabel?
De database weigert de invoer als de referentiële integriteit is afgedwongen.
Hoe kan een alternate key worden gebruikt in plaats van een primary key?
Als er meerdere candidate keys in een tabel zijn, kunnen de niet-geselecteerde keys alternate keys worden genoemd. Een alternate key kan als primary key worden gebruikt als de oorspronkelijke primary key wordt aangepast.
Wat is een surrogaat sleutel en wanneer wordt deze gebruikt?
Een surrogaat sleutel is een kunstmatige sleutel (zoals een automatisch gegenereerd ID) die geen inherente betekenis heeft. Het wordt gebruikt wanneer er geen natuurlijke sleutel aanwezig is of om de databaseprestaties te verbeteren.
Kun je een tabel hebben zonder een primary key? Zo ja, wat zijn de mogelijke gevolgen?
Ja, een tabel kan zonder primary key bestaan. De gevolgen zijn echter dat je geen garantie hebt dat de rijen uniek zijn, wat problemen kan veroorzaken bij relaties en data-integriteit.
Een tabel mag meer dan één primary key hebben.
Niet waar, een tabel mag slechts 1 primary key hebben
Een foreign key in een tabel kan verwijzen naar een niet-primary key in een andere tabel.
Niet waar, een foreign key moet verwijzen naar een primary key of een unieke sleutel in een andere tabel.
Een superkey is altijd een candidate key.
Niet waar, niet alle superkeys zijn candidate keys, omdat superkeys ook overbodige attributen kunnen bevatten.
Een primary key kan NULL-waarden bevatten.
Niet waar, een primary key mag geen NULL-waarden bevatten.
Een composite key is een sleutel die uit meerdere kolommen bestaat.
Waar
Een unique key is altijd een primary key.
Niet waar, een unique key is niet altijd een primary key, maar wel vergelijkbaar omdat beide unieke waarden garanderen.
Een foreign key hoeft niet te verwijzen naar een bestaande waarde in de gerelateerde tabel.
Niet waar, een foreign key moet verwijzen naar een bestaande waarde als referentiële integriteit wordt gehandhaafd.
Een surrogaat sleutel is een kunstmatige sleutel die geen betekenis heeft in de echte wereld
Waar
Een tabel kan meerdere candidate keys hebben
waar
Primary keys worden automatisch geïndexeerd door de meeste databasesystemen.
Waar
Wat is een ERD en waarvoor wordt het gebruikt?
Een ERD (Entity-Relationship Diagram) is een visuele weergave van de entiteiten, attributen en relaties binnen een databasestructuur. Het helpt bij het ontwerpen en begrijpen van een database.
Wat is het verschil tussen een entiteit en een attribuut in een ERD?
Een entiteit is een object of concept dat gegevens opslaat (bijvoorbeeld “Klant” of “Product”). Een attribuut is een eigenschap van een entiteit, zoals “Naam” of “Prijs”.
Wat is het doel van cardinaliteit in een ERD?
Cardinaliteit geeft de minimale en maximale hoeveelheid relaties aan tussen twee entiteiten, zoals 1:1, 1:N, of N:N.
Wat is een zwakke entiteit en hoe verschilt deze van een sterke entiteit?
Een zwakke entiteit kan niet onafhankelijk bestaan en heeft een sterke entiteit nodig om uniek geïdentificeerd te worden. Een sterke entiteit kan zelfstandig bestaan.
Wat is een relatie in een ERD en welke soorten relaties bestaan er?
Een relatie verbindt twee entiteiten en geeft aan hoe ze met elkaar in verband staan. Relaties kunnen 1:1, 1:N, of N:N zijn.
Een entiteit in een ERD kan geen primaire sleutel hebben
Niet waar
Een zwakke entiteit wordt altijd geïdentificeerd door een combinationele sleutel.
Waar
Attributen in een ERD kunnen zowel enkelvoudig als samengesteld zijn.
Waar
Een N:N-relatie moet worden opgelost door een extra entiteit toe te voegen in een relationele database.
Waar
Een ERD is uitsluitend bedoeld voor relationele databases.
Niet waar
Wat is een functionele afhankelijkheid?
Een functionele afhankelijkheid (FD) betekent dat de waarde van één attribuut (of groep attributen) uniek de waarde van een ander attribuut bepaalt. Bijvoorbeeld: StudentID → Naam.
Hoe herken je een functionele afhankelijkheid in een dataset?
Door te analyseren of de waarde van één attribuut (determinant) consistent een unieke waarde van een ander attribuut bepaalt.
Wat is een transitieve afhankelijkheid? Geef een voorbeeld.
Een transitieve afhankelijkheid treedt op wanneer attribuut A → B en B → C geldt, maar niet direct A → C. Bijvoorbeeld: StudentID → CursusCode en CursusCode → CursusNaam, maar StudentID bepaalt niet rechtstreeks CursusNaam.
Wat betekent het als een functionele afhankelijkheid volledig functioneel afhankelijk is?
Een afhankelijkheid is volledig functioneel afhankelijk als een attribuut alleen afhangt van de gehele primaire sleutel, niet van een deel ervan.
Wat is het verschil tussen een determinant en een afhankelijk attribuut in een functionele afhankelijkheid?
De determinant is het attribuut dat de waarde van een ander attribuut bepaalt. Het afhankelijke attribuut is het attribuut waarvan de waarde wordt bepaald.
Een attributenset kan meer dan één determinant hebben.
Waar
Alle functionele afhankelijkheden in een dataset zijn transitief
Niet waar
Een primaire sleutel is altijd een determinant
Waar
Partiële afhankelijkheden zijn toegestaan in een tabel in de 2e normaalvorm
Niet waar
Functionele afhankelijkheden worden gebruikt om normaalvormen te bepalen
Waar
Wat is het doel van normalisatie in databases?
Het doel van normalisatie is om redundantie te minimaliseren, de integriteit van de gegevens te waarborgen, en de prestaties van een database te verbeteren.
Wat zijn de voorwaarden voor een tabel om in de eerste normaalvorm (1NF) te zijn?
De tabel moet een unieke rij-ID hebben, alle waarden in een cel moeten atomaire (ondeelbare) waarden zijn, en elke kolom moet een enkel type gegevens bevatten.
Wat is het verschil tussen de tweede normaalvorm (2NF) en de derde normaalvorm (3NF)?
Een tabel in 2NF mag geen partiële afhankelijkheden bevatten (alleen volledige afhankelijkheid van de primaire sleutel). In 3NF mogen er geen transitieve afhankelijkheden zijn.
Wat is BCNF (Boyce-Codd Normal Form) en hoe verschilt het van 3NF?
Een tabel is in BCNF als alle determinanten candidate keys zijn. Het verschilt van 3NF omdat 3NF transitieve afhankelijkheden elimineert, maar BCNF verder gaat door elke determinant te vereisen om een candidate key te zijn.
Waarom kan denormalisatie nuttig zijn, zelfs als het leidt tot een lager niveau van normalisatie?
Denormalisatie kan nuttig zijn om queryprestaties te verbeteren in systemen waar leesbaarheid en snelheid belangrijker zijn dan opslagruimte.
Een tabel die in 3NF is, is altijd in BCNF.
Niet waar
Als een tabel voldoet aan 1NF, zijn alle cellen atomaire waarden
Waar
In 2NF mag een tabel geen partiële afhankelijkheden hebben.
Waar
BCNF elimineert zowel transitieve als partiële afhankelijkheden.
Niet waar
Een tabel in 1NF kan geen redundantie bevatten.
Niet waar
Waar staat SQL voor?
Structured Query Language
What is a database?
A database is an organized collection of structured information or data, typically stored electronically in a computer system.
True or False: A relational database uses tables to store data.
True
Fill in the blank: In a relational database, each row in a table is called a ______.
record
Which of the following is a common database management system? (A) Microsoft Word (B) MySQL (C) Adobe Photoshop
B) MySQL
What is the purpose of SQL in databases?
SQL (Structured Query Language) is used for managing and manipulating relational databases.