Geen hyphen gebruiken in MySQL-tabellen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

- Ariën  -
Beheerder

- Ariën -

09/08/2019 15:15:22
Quote Anchor link
Zojuist tijdens het developpen heb ik iets vreemds meegemaakt. Met het volgende stukje code laat ik alle velden zien in mijn database. Uiteraard netjes geëscaped, en hij loopt vast op het feit dat ik een hyphen; oftewel een streepje gebruik.

Blijkbaar mag dat niet in MySQL, maar toch kan het wel in de tabel. Is het niet vreemd dat het via PHP niet kan uitlezen, maar via het MySQL-tooltje HeidiSQL weer wel :P?

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
$row
= mysqli_query($conn,"SHOW columns FROM " . mysqli_real_escape_string($conn,$table[0]))
                    or die('cannot select table fields:'.mysqli_error($conn));
?>


Quote:
cannot select table fields:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '-03-2019' at line 1


Uiteraard heb ik die streepjes maar verwijderd, maar het blijft wel een WTF-momentje. ;-)

PS: De tabel was overigens een gebackupte test-tabel met een datum van backuppen erin, dus begin maar niet over normalisatie ;-). En de PHP-code is onderdeel van een test-script om de databasestructuur uit te lezen.
 
PHP hulp

PHP hulp

15/11/2024 08:26:04
 
Rob Doemaarwat

Rob Doemaarwat

09/08/2019 15:20:54
Quote Anchor link
Back-tics ` d'r omheen?
 
- Ariën  -
Beheerder

- Ariën -

09/08/2019 15:41:15
Quote Anchor link
Geen slecht idee, als het echt nodig is. Maar het blijft wel wazig :P
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.