Restauration de base de données

[Résolu]
Signaler
Messages postés
26
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
19 novembre 2010
-
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
-
Salut, J'ai un code de restauration d'une base de données. Il marche très bien. Mais le problème est lors de l'exécution du code de la restauration.
Je vais vous donner un exemple d'erreur:




Erreur de syntaxe près de ';
CREATE TABLE `alarmes` (
  `NUMERO` int(11) NOT N' à la ligne 1


lorsque j'exécute ce code :




DROP TABLE IF EXISTS `alarmes`;
CREATE TABLE `alarmes` (  `NUMERO` int(11) NOT NULL default '0',  `ALARMS` varchar(40) NOT NULL default '',  `nombre` int(11) NOT NULL default '0',  PRIMARY KEY  (`NUMERO`),  UNIQUE KEY `NUMERO` (`NUMERO`),  UNIQUE KEY `ALARMS_2` (`ALARMS`),  KEY `ALARMS` (`ALARMS`)) ENGINE=MyISAM DEFAULT CHARSET=latin1;

Je ne sais pas si ma question parait rédicule mais ce sont mes premiers pas en PHP.
Une remarque :  lorsque j'exécute le code instructions par instructions cela marche bien.
Merci d'avance.

6 réponses

Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
41
Salut

phpmyadmin s'occupe deja des ";", il fait plusieurs querys.

un mysql_query ne contient qu'une seule requette, donc t'as un ; dedans que si t'as une procedure stoquee (je ne connais pas le comportement de phpmyadmin a ce sujet)

<hr />une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
Messages postés
289
Date d'inscription
jeudi 5 octobre 2006
Statut
Membre
Dernière intervention
11 juin 2010
3
je ne comprend pas ton probleme car j'ai fais un copier coller de tes instruction mysql et j'ai pas d'erreur
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
41
Salut

il peut te manquer un USE bdd;

une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
Messages postés
26
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
19 novembre 2010

J'ai oublié de vous dire que L'exécution se fait à partir d'un textearea. C-à-dire que mon application offre une possibilité de restaurer une base avec un code qui se trouve dans un fichier zip en entrant ce code dans un textarea.

 Excuse moi coucou747 mais la base de données n'existe pas lors de la restauration et le code qui pose ce problème vient juste après l'istruction : create database. LA création de base se fait mais le reste du code pose un problème.
Messages postés
12303
Date d'inscription
mardi 10 février 2004
Statut
Modérateur
Dernière intervention
30 juillet 2012
41
Salut

un create database ne remplace pas un use...

une recherche sur exalead vous aurait peut-etre evite de poser cette question

In a dream, I saw me, drop dead...
U were there, U cried...
It was just a dream,
if I die, U won't cry, maybe, U'll be happy
Messages postés
26
Date d'inscription
jeudi 17 mai 2007
Statut
Membre
Dernière intervention
19 novembre 2010

Salut coucou747, j'ai essayé ton use mais le même problème se répète mais au niveau de ";" de "use db;" j'ai essayé d'enlever les ";" avec str_replace  mais même sans ";" cela ne marche pas. Je vais chercher plus dansexalead. Merci pour tout.