Requete BDD complete dans fichier texte

Résolu
DoulyCreations Messages postés 187 Date d'inscription   Statut Membre Dernière intervention   -  
DoulyCreations Messages postés 187 Date d'inscription   Statut Membre Dernière intervention   -
Bonjour,


Je viens à vous pour un problème assez original.
Je souhaiterais faire une copie de BDD d'un site intranet vers un site internet en faisant juste un clic.

J'ai utilisé de multiples méthodes mais il y a toujours eu des problèmes.

Aujourd'hui je recherche un script qui permettrais de faire une requête complète de ma BDD (comme sur phpmyadmin). Je m'explique:
Le script serait précédé d'un DELETE de la table sur le site internet et serait suivi de tout les INSERT INTO de la BDD du site intranet de la table sélectionnée.
Et ceci pour chaque tables désirées.

En gros le fichier créé ressemblerais à ceci :
DELETE FROM actualites;
INSERT INTO actualites (contenu) VALUES ("contenu de l'actualite");
INSERT INTO actualites (contenu) VALUES ("contenu bis");
...


Je ne sais pas comment m'y prendre...

Si quelqu'un a un tuyau je suis preneur.


Cordialement



A voir également:

6 réponses

DoulyCreations Messages postés 187 Date d'inscription   Statut Membre Dernière intervention   19
 
UP plz
0
maka54 Messages postés 698 Date d'inscription   Statut Membre Dernière intervention   80
 
pourquoi ne pas utiliser directement le fichier export de phpmyadmin ?
0
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
si tu n'as qu'une seule fois a le faire, pourquoi comme dis maka54 ne pas utiliser l'export / import de phpmyadmin

si tu fait selon le principe que tu dis:

DELETE FROM actualites;
INSERT INTO actualites (contenu) VALUES ("contenu de l'actualite");
INSERT INTO actualites (contenu) VALUES ("contenu bis");


après le DELETE tu n'as plus rien donc difficile d'insérer

avec un script php tu peux faire

lecture de la bBDD internet (SELECT ....)

puis par une boucle while, ligne par ligne tu insère dans la BDD intranet

(INSERT...)

puis si l'opération d'insertion s'est bien passée

tu DELETE

0
DoulyCreations Messages postés 187 Date d'inscription   Statut Membre Dernière intervention   19
 
Bonjour,

Effectivement dans mon explication j'ai mal interprété ma requête:

TRUNCATE actualites;
INSERT INTO actualites (contenu) VALUES ("contenu de l'actualite");
......

Mon but concret est qu'en appuyant sur un simple bouton il y a une mise à jour d'une base de données externe qui se met à jour grâce aux données d'un site intranet.

On a en fait 2 sites internet: 1 en local et 1 sur internet.
Afin de mieu visualiser les mises à jour, le site internet est modifié localement.
Une fois que les pages ont été validées par tout le monde, à l'aide d'un simple clic le site internet sera identique à celui en interne.

C'est pour cela que je souhaiterais limiter le nombre de problèmes avec un vidage des tables externes et d'insertions des tables vidées avec les données des tables en interne.

Cette manipulation évite de devoir aller sur phpmyadmin en local, de devoir sélectionner chaque table à exporter, d'enregistrer le fichier .sql sur l'ordinateur, de devoir se connecter sur phpmyadmin sur internet et d'importer le fichier .sql créé précédemment.

Toutes cette manip serait réglé en un seul clic.


A ce jour tout fonctionne correctement mais à l'aide de toutes les requêtes effectuées depuis la dernière mise à jour.
Le fichier de Mise à jour est donc remplie de INSERT, UPDATE, UPDATE, INSERT, DELETE, .......
La mise à jour est trop trop longue de cette manière et pas très propre...


Merci de m'avoir lu :)
Cordialement
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Alain_42 Messages postés 5361 Date d'inscription   Statut Membre Dernière intervention   894
 
Alors vas voir cet exemple:

http://pmol.fr/programmation/web/synchroniser-deux-bases-de-donnees-mysql-avec-php/
0
DoulyCreations Messages postés 187 Date d'inscription   Statut Membre Dernière intervention   19
 
Merci Alain_42, l'article est effectivement très intéressant à la seule différence qu'il faudrait un fichier texte pour chaque table de la BDD.

Par contre effectivement ça peut avancer vers la solution finale qui serait de réécrire à la suite du fichier pour chaque table afin d'exporter un seul fichier par FTP.

Mais je pense que je vais opter pour la solution que tu m'as envoyée, ça ne fera qu'une vingtaine d'envoi et les tables ne sont pas relationnelles donc ça me convient.

Merci bien cher compatriote :)
0