Dernière idée de ma part...
Bon, puisque le doublage des quotes ne sert à rien, il me reste une idée. J'ai personnellement eu l'occasion de vivre un peu la même chose et de tourner en rond longtemp avant de comprendre que dans la syntaxe SQL il me fallait encadrer mes chaînes par des accents graves, et non par des apostrophes. Mais il s'agit là d'un cas bien précis qui ne répond peut-être pas aux mêmes contraintes que vous. En clair, j'exécutais une requete SQL du type INSERT depsui un OS hôte type LINUX vers un serveur MySQL sous windows.
J'ai du remplacer mes requetes comme dans l'exemple ci-dessous :
INSERT INTO 'base'.'table1' ('colonne1', 'colonne2') VALUE ('valeur1', 'valeur2');
que j'ai du écrire
INSERT INTO `base`.`table1`(`colonne1`, `colonne2`) VALUE ('valeur1', valeur2');
Pour trouver cela, j'ai fini par m'appuyer sur les requetes générées et affichées dans l'exploitation de phpMyAdmin.
Voilà, en dehors de cela, je n'ai plus d'idées pour vous aider à solutionner votre problème...