Bonjour,
j'aimerais pouvoir réaliser des requêtes qui fonctionne autant pour Postgre que pour MySQL. Du coup j'utilise PDO pour uniformiser tout ça.
Ma DB existante sur MySQL utilise des champs/table avec des majuscules (ex:ID_Maison,..) et du retour de la requête j'en retire un objet pré defini avec des set et get (getID_Maison(),...).
Mais Postgre lui n'aime pas trop les majuscule et si l'on veut faire un
SELECT * FROM habitation WHERE ID_Maison = $id
il faut mettre le champ ID_Maison entre "" sinon il y a erreur et il ne trouve pas le champ (Postgre transforme tout en minuscule sauf s'il y a des ""). Mais par contre, MySQL lui, n'aime pas trop les guillemets et s'il y en a, il considérera le champ comme une chaine de caractère..
Les solutions proposées :
- mettre des `` à la place des "" mais Postgre ne les acceptes pas.
- renommer les champs,table,.. en minuscule => vu la taille de la DB je n'ose imaginer le bordel..
- mettre des `` et quand on fait appelle à pdo parser la requête et remplacer les `` par des "" si on utilise Postgre...bof bof.
N'y aurait-il pas un réglage/paramètre/astuce rédempteur à ce problème ?
Si vous avez une solution, je suis de toute ouïe. Merci d'avance et bonne soirée/journée.
Antoine.
Partager