Set
Een set is een gegevenstype dat uit vooraf gedefinieerde waarden bestaat. Het lijkt op het ENUM-gegevenstype, maar een constante of variabele die als set is gedefinieerd, kan meerdere waarden opslaan die in de setdeclaratie worden vermeld, in plaats van slechts één.
Een set kan worden gedefinieerd in de broncode van een programma of in de tabelstructuur van een database. Een set waarin verschillende soorten sporten worden opgeslagen, kan bijvoorbeeld als volgt in Python worden gedeclareerd:
set Sports { "soccer", "baseball", "tennis", "golf" };
Op dezelfde manier kan een kolom in een MySQL-databasetabel als volgt worden gedefinieerd:
Sports SET ('soccer', 'baseball', 'tennis', 'golf')
Aan een variabele of databasewaarde die als Sports is gedefinieerd, kunnen een of meer van de vier hierboven vermelde sporten worden toegewezen. Daarom is het zinvol om de variabele Sports als set te maken als deze waarschijnlijk meerdere waarden zal bevatten. Een voorbeeld is een webformulier waarin een gebruiker wordt gevraagd de sporten te selecteren die hij of zij graag beoefent. Omdat de gebruiker een of meer van de vooraf gedefinieerde waarden kan kiezen, moeten de resulterende gegevens als set worden opgeslagen. Als het formulier de gebruiker zou vragen om zijn of haar favoriete sport te kiezen, moet de variabele in plaats daarvan als enum worden gedeclareerd.
Net als enums kunnen sets worden gebruikt om de gegevensintegriteit te waarborgen door de waarden te beperken die een variabele of databaserecord kan opslaan. Hierdoor zijn sets echter ook minder flexibel dan tekenreeks- of kommagetal-gegevenstypen. Sets zijn daarom geschikt voor gegevenstypen die slechts een beperkt aantal waarden bevatten.
Test je kennis