Om een nieuwe tabel aan te maken, selecteer je de gewenste database en navigeer je via de menubalk naar het tabblad ‘Structure’ (structuur).
Je geeft een naam op en het aantal eigenschappen dat je wenst op te slagen (vergeet de primaire sleutel niet).
Als je bijvoorbeeld een database voor gebruikers van je website wilt maken, kun je de volgende titels voor de kolommen van de tabel gebruiken:
Kolom | Beschrijving |
---|---|
id | Een uniek identificatienummer voor elke gebruiker |
forename | Voornaam van de gebruiker |
surname | Achternaam van de gebruiker |
Emailadres van de gebruiker | |
password | Wachtwoord van de gebruiker |
created_at | Tijdstip waarop de vermelding is aangemaakt |
updated_at | Tijdstip waarop de vermelding is gewijzigd |
Voor je gebruikersdatabase maak je dus een tabel users met zeven kolommen. Je bevestigt de invoer met ‘Go’.
Voer een tabelnaam en het gewenste aantal kolommen in
Geef vervolgens alle eigenschappen en hun type.
Eerst het aantal opgegeven eigenschappen maar wel “leeg”
Optie | Omschrijving |
---|---|
Name | Elke kolom van een databasetabel krijgt een titel. Deze kan, met enkele beperkingen, vrij worden gekozen. Latijnse letters (hoofdletters en kleine letters, maar zonder trema’s), cijfers, dollartekens en underscores zijn geen probleem. De underscore kan in plaats van de spatie (niet toegestaan) worden gebruikt (onjuist: user id; juist: user_id). Kolomtitels mogen niet alleen uit cijfers bestaan. Bovendien bevat de databasetaal SQL enkele sleutelwoorden die voor bepaalde taken zijn gereserveerd. Een lijst daarvan vind je in de MySQL-documentatie. De meeste van deze beperkingen kun je omzeilen, maar dan moet je de desbetreffende kolom altijd tussen backticks (“) zetten. Dezelfde regels gelden overigens ook voor tabel- en andere namen in MySQL. Het is raadzaam relevante kolomtitels in het Nederlands te gebruiken die bij het kenmerk passen. |
Type | Het gegevenstype geeft aan welke soort gegevens in een kolom wordt opgeslagen. In MySQL en MariaDB kun je gegevens als gehele getallen, drijvendekommagetallen, tijdstippen en data alsook als teksttekenreeksen en binaire gegevens definiëren. Een toelichting hierop vind je in de tabel ‘Gegevenstypen’. |
Length/Values | Bij sommige gegevenstypen (bijvoorbeeld teksttekenreeksen) kun je voor de waarden van een kolom een maximale lengte instellen. Deze opmaak is echter optioneel. |
Default | Met de optie ‘Default’ kun je een standaardwaarde voor een kolom bepalen. Deze wordt dan automatisch ingevoegd als een gegevensset geen waarde voor de desbetreffende kolom bevat. |
Collation | Met de optie ‘Collation’ wijs je een bepaald tekentype aan een kolom toe, die kan afwijken van de globale database-instellingen. Je kunt de codering ook op tabelniveau wijzigen voor alle kolommen. |
Attributes | Sommige gegevenstypen kunnen door optionele kenmerken nauwkeuriger worden bepaald. Zo kun je met de kenmerken signed en unsigned bijvoorbeeld vastleggen of gehele getallen en drijvendekommagetallen ook negatieve (signed) of alleen positieve (unsigned) waarden kunnen aannemen. |
Index | Via de optie ‘Index’ stel je regels in voor de indexering. Als je voor een kolom de indexinstelling PRIMARY selecteert, geldt deze kolom als primaire sleutel van de tabel. De instelling UNIQUE legt vast dat waarden binnen deze kolom slechts één keer kunnen worden opgeslagen. Zo kunnen dubbele vermeldingen worden voorkomen. |
A_I | De afkorting ‘A_I’ staat voor AUTO_INCREMENT en zorgt ervoor dat het databasemanagementsysteem een waarde automatisch doornummert als er bij het aanmaken van een gegevensset geen waarde is ingevoerd. Deze optie wordt bijvoorbeeld gebruikt bij de indexering van gegevenssets. |
Comments | In het veld ‘Comments’ kun je commentaren bij de kolommen van de tabel zetten. |
De verschillende types en hun mogelijke waardes:
Type | Omschrijving | Waardenbereik | Geheugenvereiste |
---|---|---|---|
TINYINT | Een zeer klein geheel getal | Zonder teken: 0 tot 255 Met teken: -128 tot +127 | 1 Byte |
SMALLINT | Een klein geheel getal | Zonder teken: 0 tot 65.535 Met teken: -32.768 tot +32.767 | 2 Byte |
MEDIUMINT | Een middelgroot geheel getal | Zonder teken: 0 tot 16.777.215 Met teken: -8.388.608 tot +8.388.607 | 3 Byte |
INT/INTEGER | Een geheel getal van normale grootte | Zonder teken: 0 tot 4.294.967.295 Met teken: -2.147.483.648 tot +2.147.483.647 | 4 Byte |
BIGINT | Een groot geheel getal | Zonder teken: 0 tot 18.446.744.073 Met teken: -9.223.372.036.854.775.808 tot +9.223.372.036.854.775.807 | 8 Byte |
FLOAT | Een drijvend kommagetal met enkele precisie | Zonder teken: 0 tot 3,4e+38 Met teken: -3,4e+38 tot 3,4e+38 | 4 Byte |
DOUBLE | Een drijvend kommagetal met dubbele precisie | Zonder teken: 0 tot 3,4e+38 Met teken: -3,4e+38 tot 3,4e+38 | 8 Byte |
DATE | Datumweergave in ‘YYYY-MM-DD’ | ‘1000-01-01’ tot ‘9999-12-31’ | 3 Byte |
TIME | Tijdweergave in ‘HH:MM:SS:ssssss | ‘-838:59:59.999999’ tot ‘838:59:59.999999’ | 3 Byte |
DATETIME | Datumweergave in ‘YYY-MM-DD HH:MM:SS.ssssss’ | Komt overeen met DATE en TIME (tot 23:59:59.999999 uur) | 8 Byte |
TIMESTAMP | Tijdstempel in ‘YYY-MM-DD HH:MM:DD’ | ‘1970-01-01 00:00:01’ (UTC) tot ‘2038-01-19 05:14:07’ (UTC) | 4 Byte |
YEAR | Tussen het jaar 1901 en 2155 | 1901 tot 2155 en 0000 | 1 Byte |
CHAR | Tekenreeks met vaste lengte; M komt overeen met aantal tekens | Voor M: 0 tot 255 tekens | M Byte |
VARCHAR | Tekenreeks met variabele lengte; M komt overeen met aantal tekens | Voor M: 0 tot 65.535 tekens | Max. M + 2 Byte |
TINYTEXT | Zeer kleine tekenreeks met variabele lengte; M komt overeen met aantal tekens | Voor M: 0 tot 255 tekens | M + 1 Byte |
TEXT | Tekenreeks met variabele lengte; M komt overeen met aantal tekens | Voor M: 0 tot 255 tekens | M + 2 Byte |
MEDIUMTEXT | Middelgrote tekenreeks met variabele lengte; M komt overeen met aantal tekens | Voor M: 0 tot 16.777.215 tekens | M + 3 Byte |
LONGTEXT | Lange tekenreeks met variabele lengte; M komt overeen met aantal tekens | Voor M: 0 tot 4.294.967.295 tekens (4 GB) | M + 4 Byte |
BLOB | Een BLOB (Binary Large Object) is een binair object met gegevens van variabele lengte (bijv. afbeeldingen, audiobestanden) | Max. lengte M: 65.535 Byte | M + 2 Byte |
TINYBLOB | Klein binair object met gegevens van variabele lengte | Max. lengte M: 255 Byte | M + 1 Byte |
MEDIUMBLOB | Middelgroot binair object met gegevens van variabele lengte | Max. lengte M: 16.777.215 Byte | M + 3 Byte |
LONGBLOB | Groot binair object met gegevens van variabele lengte | Max. lengte M: 4.294.967.295 Byte (4 GB) | M + 4 Byte |
ENUM (opsomming) | Een tekenreeksobject waarvan de toelaatbare waarden bij het aanmaken van de kolom worden gedefinieerd | Max. 65,535 verschillende elementen | 1 of 2 Bytes, afhankelijk van het aantal mogelijke waarden |
SET | Een tekenreeksobject waarvan de toelaatbare waarden bij het aanmaken van de tabel worden gedefinieerd. Meerkeuze is mogelijk | Max. 64 verschillende waarden | 1, 2, 3, 4 of 8 Byte, afhankelijk van het aantal mogelijke waarden |
Na het aanmaken van een tabel kan je bijvoorbeeld ook kolommen toevoegen.
Je kan ook bestaande kolommen wissen, wijzigen enzovoort via de knoppen achter de veldnamen.