Computable.nl
  • Thema’s
    • Carrière
    • Innovatie & Transformatie
    • Cloud & Infrastructuur
    • Data & AI
    • Governance & Privacy
    • Security & Awareness
    • Software & Development
    • Werkplek & Beheer
  • Sectoren
    • Channel
    • Financiële dienstverlening
    • Logistiek
    • Onderwijs
    • Overheid
    • Zorg
  • Awards
    • Computable Awards
    • Nieuws
    • Winnaars
    • Partner worden
    • Inzendingen
    • De jury en experts
  • Vacatures
    • Vacatures bekijken
    • Vacatures plaatsen
  • Bedrijven
    • Profielen
    • Producten & Diensten
  • Kennisbank
  • Magazine
    • Magazine
    • Adverteren in het magazine
  • Nieuwsbrief

We moeten wel met SQL

05 mei 2005 - 22:003 minuten leestijdOpinieData & AI
Frank Heikens
Frank Heikens

Chris Date heeft met zijn mening over SQL de tongen goed losgekregen (Computable 1 april 2005 pagina 12 ‘SQL is waardeloos’). Tot nu toe wordt zijn visie door de lezers onderschreven, maar volgens ict-consultant Frank Heikens kunnen we niet veel anders, want het is nog steeds de meestgebruikte databasetaal

De afgelopen weken heb ik uitvoerig de nadelen van SQL langs zien komen in Computable. Ik ben het grotendeels eens met Chris Date, Han Zijlstra en anderen: SQL, in welk dialect dan ook, is verre van perfect. Helaas is het de enige database taal die we op grote schaal tot onze beschikking hebben. Wat echter nog een groter probleem is dan SQL met zijn beperkingen, is de kwaliteit van de databases en de database programmatuur.
Alle bekende databases (Oracle, DB2, …) zijn relationele databases. Definieer een tabel A met een unieke primary key, en de database engine zorgt ervoor dat deze tabel te allen tijde een unieke sleutel heeft; indien gewenst wordt deze sleutel gegenereerd. Definieer een tabel B met een foreign key die uit de primary key van tabel A bestaat, en de database engine zorgt ervoor dat er geen gekke relaties tussen de tabellen A en B kunnen bestaan.
Echter, de meeste databases worden als elektronische kaartenbak gebruikt. Sleutels zijn er niet, als je geluk hebt is er een substituut (een unieke index). Relaties tussen tabellen zijn niet te vinden in de database; daarvoor moet je de SQL-code van de applicatie onderzoeken.
BCNF (Boyce/Codd Normal Form) of de derde normaalvorm? De meesten hebben geen idee wat dat is. Maak lekker veel tabellen, dupliceer veel data, liefst in kolommen die een iets andere definitie hebben (zoals karaktervelden van 25 posities in het originele veld en 20 posities in het afgeleide veld). Maak batches en triggers die pogen alle tabellen te synchroniseren, en je database spaghetti is compleet! Het dupliceren van data gebeurt niet alleen vanwege de performance, maar ook vanwege het gemak of het gebrek aan kennis met betrekking tot database ontwerp. En dit ligt echt niet aan de gebreken van SQL, maar aan de gebreken van de SQL programmeurs!
Om een voorbeeld van Han Zijlstra te nemen: met een SQL uitbreiding als Oracle’s PL/SQL is het mogelijk een query met outer joins op te splitsen in een select zonder outer joins met daaromheen een stukje code, waarin de gevallen van wel of geen match met een bepaalde andere tabel overzichtelijk in een IF-THEN-ELSE structuur kan worden afgehandeld.
Kun je SQL de schuld geven van null waarden in een sleutel? Misschien is het niet goed dat het mag in SQL, maar de database ontwerper had eenvoudig een ‘not null’ restrictie op dat sleutelveld kunnen zetten. Het is wel heel makkelijk om SQL de schuld te geven van dit soort menselijke fouten!
Net als Han Zijlstra hoop ik dat SQL binnenkort wordt opgevolgd door een betere databasetaal, en dan liefst één die zo uitgebreid is dat elke database leverancier hem onveranderd opneemt in zijn produkten. Want SQL mag dan een standaard zijn, elke database leverancier heeft daar zijn eigen uitbreidingen op bedacht, zodat SQL niet overdraagbaar is van database A naar database B.
Er is echter nog geen universeel beschikbare opvolger van SQL. Totdat deze er is, moeten we het met SQL doen. Wanneer database ontwerpers en programmeurs nu al betere databases en database applicaties maken, dan zijn we misschien klaar voor de opvolger van SQL als deze beschikbaar komt.

 
Frank Heikens, ICT consultant

Meer over

Advanced analyticsECMSQL

Deel

    Inschrijven nieuwsbrief Computable

    Door te klikken op inschrijven geef je toestemming aan Jaarbeurs B.V. om je naam en e-mailadres te verwerken voor het verzenden van een of meer mailings namens Computable. Je kunt je toestemming te allen tijde intrekken via de af­meld­func­tie in de nieuwsbrief.
    Wil je weten hoe Jaarbeurs B.V. omgaat met jouw per­soons­ge­ge­vens? Klik dan hier voor ons privacy statement.

    Whitepapers

    Computable.nl

    Geïntegreerde ICT in de zorg

    Hoe samenhang in IT bijdraagt aan continuïteit en veiligheid

    Computable.nl

    Agentic AI in de praktijk

    Hoe autonome AI werkprocessen fundamenteel verandert

    Computable.nl

    Ontdek hoe je de kracht van private cloud kunt ontgrendelen

    De toekomst van serverbeheer. Nieuwe eisen aan prestaties en beveiliging.

    Geef een reactie Reactie annuleren

    Je moet ingelogd zijn op om een reactie te plaatsen.

    Awards-inzendingen

    Pijl naar rechts icoon

    Cegeka

    Ammar Alkhatib (Cyber Security Advisor, Cegeka)
    Pijl naar rechts icoon

    Prometheus Informatics B.V.

    Duurzamer, veiliger én voordeliger rijden bij Bouw Logistics Services (Bouw Logistics Services en Prometheus Informatics)
    Pijl naar rechts icoon

    Prometheus Informatics B.V.

    Sturen op duurzaamheidsdoelstellingen bij Rabelink Logistics (Rabelink Logistics en Prometheus Informatics)
    Pijl naar rechts icoon

    Searoutes

    CO₂-transparantie voor digitale freight forwarding bij Shypple (Shypple en Searoutes)
    Pijl naar rechts icoon

    INNO-WAY Rabotics

    Verkoopstijgingen behaald van 100% op geselecteerde producten en meer klanten geholpen bij Gamma (GAMMA en INNO-WAY)
    Alle inzendingen
    Pijl naar rechts icoon

    Populaire berichten

    Meer artikelen

    Meer lezen

    Data & AI

    Kabinet kan spoedig ai‑overnames uit ‘niet‑bevriende landen’ blokkeren

    Data & AI

    Ai-versie van Siri slimmer en krachtiger

    Carrière

    Dijkbewaking: high performers weten wát ze moeten beschermen

    Data & AI

    Van data naar actie: Snowflake zet vol in op de agentic enterprise

    Data & AI

    8 vragen over de Nederlandse AI-fabriek

    Data & AI

    Kort: Anthropic bang van zich zelf, verouderde facturatie werkt wanbetaling in de hand (en meer)

    ...

    Footer

    Direct naar

    • Carrièretests
    • Kennisbank
    • Computable Awards
    • Magazine
    • Ontvang Computable e-Magazine
    • Cybersec e-Magazine
    • Topics
    • Phishing
    • Ransomware
    • NEN 7510

    Producten

    • Adverteren en meer…
    • Jouw Producten en Bedrijfsprofiel
    • Whitepapers & Leads
    • Vacatures & Employer Branding
    • Persberichten

    Contact

    • Colofon
    • Computable en de AVG
    • Service & contact
    • Inschrijven nieuwsbrief
    • Inlog

    Social

    • Facebook
    • X
    • LinkedIn
    • YouTube
    • Instagram
    © 2026 Jaarbeurs
    • Disclaimer
    • Gebruikersvoorwaarden
    • Privacy statement
    Computable.nl is een product van Jaarbeurs