'ERROR 1054 (42S22): Unknown column 'x' in 'field list'' betekent dat de query een kolom gebruikt die niet bestaat: een tikfout, een ontbrekende migratie of verkeerde aanhalingstekens.
MySQL meldt Unknown column 'prijs_incl' in 'field list' als een query een kolom noemt die niet in de tabel staat. 'field list' betekent dat het in het SELECT- of INSERT-deel staat; dezelfde fout kan ook 'in where clause' of 'in order clause' zeggen.
Na een update van software is de meest voorkomende oorzaak een databasemigratie die niet is uitgevoerd: de nieuwe code verwacht een kolom die in jouw database nog niet bestaat. Een andere klassieker: een tekstwaarde tussen backticks in plaats van aanhalingstekens.
Menunamen kunnen per versie of toestel iets anders heten. Loop de stappen op volgorde af en stop zodra het werkt.
Bekijk de kolommen van de tabel en vergelijk de naam, inclusief schrijfwijze.
SHOW COLUMNS FROM producten;Backticks zijn voor namen van kolommen en tabellen, enkele aanhalingstekens voor tekstwaarden. Een waarde tussen backticks ziet MySQL als kolomnaam.
-- fout: `Amsterdam` wordt gelezen als kolom
SELECT * FROM klanten WHERE plaats = `Amsterdam`;
-- goed:
SELECT * FROM klanten WHERE plaats = 'Amsterdam';Gebruikt de software migraties (Laravel, Symfony, veel CMS'en), voer die dan uit. In WordPress-plugins gebeurt dit meestal automatisch bij de update of na een klik op 'Database bijwerken'.
php artisan migrate --force # Laravel, na een back-upEen alias uit SELECT kun je niet in WHERE gebruiken; daar moet de oorspronkelijke kolom of een subquery staan. In HAVING en ORDER BY mag het wel.
Kom je er met deze stappen niet uit, of wil je het liever niet zelf doen? We kijken online mee of komen langs. Hulp op afstand kost €20 per uur; komen we langs, dan is de prijs op aanvraag. Je weet vooraf waar je aan toe bent.
Schrijf kort wat er misgaat en wat je al hebt geprobeerd. Kies of we bellen, online meekijken of langskomen.
De update heeft de databasestructuur nog niet bijgewerkt. Zoek in het beheer naar een melding om de database bij te werken, of draai de update opnieuw.
Controleer of je in de juiste database en tabel kijkt (testomgeving vs. live) en of er geen onzichtbare spatie in de naam staat.
Liever via de migratie van de software zelf, zodat type en standaardwaarde kloppen.
Hulp nodig van een mens? Website-onderhoud · WordPress-support · Hosting en onderhoud · Alle oplossingen