Bonjour,

Je gère mes mises à jour de mes bases MySQL avec DBDeploy via un package PHP Pear.
DBDeploy se charge de me générer les fichiers sql de mise à jour de ma base en fonction de sa version de révision. Charge à moi ensuite de déployer cet unique fichier de mise à jour.

DBDeploy me génére un fichier commenté par des tirets, dont voici les premières lignes :
--------------- Fragment begins: 1 ---------------
INSERT INTO changelog (change_number, delta_set, start_dt, applied_by, description) VALUES (1, 'Main', UNIX_TIMESTAMP(), 'dbdeploy', '1.sql');
Je lance la mise à jour de la base par une ligne du type :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
/usr/bin/mysql -u user -pPASSWORD -h localhost -D ma-base < /home/web/dbdeploy/update.sql
Ce qui me donne l'erreur suivante, due aux tirets de commentaires :
ERROR 1064 (42000) at line 1: 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 '-------------
INSERT INTO changelog (change_number, delta_set, start_dt, applied' at line 1
D'où ma question, est il possible au client MySQL d'intégrer de tel fichier ? Peut-être avec un paramètre ? Sinon je modifierai le fichier DBDeploy, j'aurais juste un espace à rajouter en fait...

Le paramètre par défaut de mon client MySQL devrait ignorer les commentaires.

Merci