Skip to main content

Data Types

In SQL en ook in veel computertalen zoals PHP, Python, C en Java, heb je te maken met datatpyes en vergelijkingen.

Datatypen

Een computer wil graag weten wat voor soort gegevens je wilt opslaan. Stel je verteld de computer  "Hallo"+" "+"Jaap!" dan betekent dit dat de computer dit (een beetje afhankelijk van de taal) dat kan zien als "Hallo Jaap!". De woorden worden door het + teken achter elkaar gezet. Maar wat als je de computer verteld 4+3? Is dit 7 of is dit 43?

Het antwoor is dat dit ligt aan het datatype. Is het een getal of een string? Een string is een verzameling letters of cijfers en een getal is een verzameling getallen.

Getallen

Met getallen kun je rekenen. Om getallen efficient op te slaan wil de computer iets meer weten dan alleen maar of iets eengetal moet zijn. Is het een geheel getal, of een gebroken getal (met een komma)? Is het een klein getal of heb je extra geheugen nodig om een extra groot getal op te slaan? Dit leg je vast door het data type te definieren.

Eigenlijk zijn er twee hoofdtypen, de INT, Integer. Dit is een geheel getal van -2147483648 tot -2147483647. Op de integer zijn allamaal varianten, kleine integers, zeer kliene integers, grote integers of zeer grote integers. Je zou kunnen zeggen dat je altijd de grootste variant neemt. Dat zou best werken, maar het nadeel is dat het werken met grotere getallen langzamer is en meer geheugenruimte kost (intern geheugen en hard diskruimte).

Naast de integer hebben we de FLOAT. Dit is een getal met ene decimaal. Ook hiervan heb je weet grotere en kleinere varianten.

Strings

Tegenover de getallen staan strings, dit zijn 'woorden' waar je niet mee kan rekenen. Een woord kan ook een getal zijn, maar een string zet je altijd tussen quotes om aa te geven dat het een string is. "551" is dus een string en daarmee kan niet worden gerekend. "Dit is een zinnetje" is een andere string. "$12.14" is ook een string.

Strings kun je ook in allerlij formaten opslaan. De meest voorkomende zijn CHAR en VARCHAR.

CHAR

CHAR heeft een vaste lengte. Bivoorbeeld CHAR(2). Met een CHAR kan heel snel worden gewerkt omdat elke string precies even lang is. CHAR(n) gebruik je vaak als alle strings even lang zijn, bijvoorbeeld postcode.

VARCHAR

VARCHAR heeft een variabele lengte met ene maximum van N., Dus VARCHAR(100) is een string die een lengte heeft van 0,1,2,3,4,5,....100 een variable lengte dus met een maximum van 100. Het voordeel van een varchar is dat die minder opslag kost dan een CHAR. Als je VARCHAR(100) definieerd en maar 10 posities gebruikt dan worden niet alle 100 posities ook gebruikt. Het nadele van een VARCHAR is dat die iets langzamamer is bij het verwerken.

DATE

Een date wordt gebruikt om een datum, en tijd vast te leggen.

Alle datatypen die in MySQL worden gebruikt, kun je vinden op: http://domoticx.com/mysql-database-datatypen/