IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration MySQL Discussion :

phpMyAdmin : export et import SQL


Sujet :

Administration MySQL

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut phpMyAdmin : export et import SQL
    Bonjour à tous,

    alors voila, j'ai une base de données que je souhaite livrer sous forme de dump sql.
    Disposant d'un client Navicat, je fais un export au format SQL.
    Lorsque je veux créer une BDD avec ce dump et Navicat, pas de problème.

    Maintenant, j'utilise ce même fichier pour créer ma base avec PhPMyAdmin et la ben ca marche pas ...
    J'me dis, le format de Navicat doit pas correspondre exactement avec celui de PhPMyAdmin, je réalise donc un export SQL de ma base avec PhpMyAdmin,
    je teste l'import et ben ca marche pas non plus !!!!

    ==> peut être est-ce un problème connu, à savoir PhpMyAdmin ne sait pas importer les fichiers qu'il génére !!! ou ne sait pas importer les fichiers SQL en général

    si qqun peut m'aider

    merci d'avance

  2. #2
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    ca marche pas ...
    Symptômes ?
    - Message d'erreur ? Si oui lequel ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut
    je pense pas que ca puisse beaucoup t'aider mais bon :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    INSERT INTO `myTable`
    VALUES (
    '10', 'Nom1', 'Françoise', '', '01 69 xx xx xx', '01 69 xx xx xx', '100', '8', '6', '3', '0', '0'
    );
    INSERT INTO `myTable`
    VALUES (
    '6', 'Nom2', 'Mickael', '', '05 56 xx xx xx', '05 56 xx xx xx', '96', '0', '2', '2', '22', '5'
    );
    INSERT INTO `myTable`
    VALUES (
    '15', 'Nom3', 'Bruno', '', '01 34 xx xx xx', '', '106', '9', '6', '4', '0', '5'
    );
    INSERT INTO `myTable`
    VALUES (
    '644', 'Nom4', 'AS', '', '', '', '0', '0', '58', '5', '0', '0'
    );
    INSERT INTO `myTable`
    VALUES (
    '16', 'Nom5', 'Frédéric', '', '01 69 xx xx xx', '01 69 xx xx xx', '115', '9', '6', '4', '0', '5'
    );
    INSERT INTO `myTable`
    VALUES (
    '17', 'Nom6', 'Xavier', '', '01 69 xx xx xx', '01 69 xx xx xx', '0', '9', '6', '4', '0', '233'
    );
    MySQL a répondu:Documentation
    #1064 - 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 `myTable` VALUES ('6', 'Nom2', 'Mickael', '', '05 56 88 88 57', '' at line 2
    sinon la taille d'import max signalée est
    2 048 Kio
    ca veut dire quoi en Ko de Microsoft (mon fichier sql fait 140 Ko)?

  4. #4
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    Si tu essaies la première requête toute seule, celle avec VALUES('10', 'Nom1'..., ça fonctionne ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut
    Bon, il semblerait que j'ai corrigé à moitié mon problème d'import,
    j'avais dans mon php.ini la variable suivante mbstring.func_overload = 2 ,
    je l'ai passé à 0

    donc j'arrive maintenant à importer les 2 premières tables mais pas la troisième pour cause de duplication
    #1062 - Duplicate entry 'Assistance ' for key 'PRIMARY'
    mais en fait j'ai les 3 enregistrements suivants :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    95, 'Assistance à maîtrise d''oeuvre pour le marché A', 'Assistance MO - A', 29, 30, 31, 32, 33, 34, 188, 5),
    (96, 'Assistance à maîtrise d''oeuvre pour le marché B', 'Assistance MO - B', 36, 37, 38, 39, 40, 41, 213, 12),
    (97, 'Assistance à maîtrise d''oeuvre pour le marché C', 'Assistance MO - C', 45, 44, 46, 0, 34, 43, 188, 12),
    ma clé primaire est sur le 2ème champ qui correspond à
    Assistance à maîtrise ...
    mais il ne distingue pas les 3 enregistrements qui sont distincts par la lettre A, B et C en fin de chaine
    et la j'avoue que je comprends pas trop bien pourquoi ...

  6. #6
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    Une clé primaire sur une colonne de type VARCHAR, c'est pas top ! Il vaudrait beaucoup mieux un entier, ce qui semble être le cas de la première colonne.

    On peut avoir la description de la table (résultat de SHOW CREATE TABLE myTable) ?
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut
    pour la clé primaire, je suis trop avancé dans le projet pour la modifier ...
    sinon je sais pas si c'est ca que tu me demandes :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
        CREATE TABLE `marche` (
     `IDMarche` mediumint(9) unsigned NOT NULL AUTO_INCREMENT,
     `Nom` varchar(255) NOT NULL DEFAULT '',
     `NomSimplifie` varchar(255) NOT NULL DEFAULT '',
     `IDResponsable` mediumint(9) unsigned NOT NULL,
     `IDIP` mediumint(9) unsigned NOT NULL,
     `IDRCR` mediumint(9) unsigned NOT NULL,
     `IDRCRAdjoint` mediumint(9) unsigned NOT NULL,
     `IDIC` mediumint(9) unsigned NOT NULL,
     `IDCM` mediumint(9) unsigned NOT NULL,
     `IDProduit` mediumint(9) unsigned NOT NULL,
     `IDSociete` mediumint(9) unsigned NOT NULL,
     PRIMARY KEY (`Nom`),
     KEY `IDMarche` (`IDMarche`)
    ) ENGINE=InnoDB AUTO_INCREMENT=245 DEFAULT CHARSET=utf8

  8. #8
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut
    bon, j'avais pas vu,
    il me met aussi ca en message d'erreur au début :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Il semble qu'il y ait une erreur dans votre requête SQL. Le message ci-bas peut vous aider à en trouver la cause.
     
    ERROR: Apostrophe non fermé @ 1601
    j'ai viré les apostrophes pour voir mais ca marche pasmieux, il me met quand même le même message ...

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut
    bon,
    je mets tout pour voir si vous trouvez l'erreur ou si ca marche chez vous auquel cas ca serait une erreur de parmaetrage php mysql ou ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    -- --------------------------------------------------------
     
    --
    -- Structure de la table `marche`
    --
     
    DROP TABLE IF EXISTS `marche`;
    CREATE TABLE IF NOT EXISTS `marche` (
      `IDMarche` mediumint(9) unsigned NOT NULL AUTO_INCREMENT,
      `Nom` varchar(255) NOT NULL DEFAULT '',
      `NomSimplifie` varchar(255) NOT NULL DEFAULT '',
      `IDResponsable` mediumint(9) unsigned NOT NULL,
      `IDIP` mediumint(9) unsigned NOT NULL,
      `IDRCR` mediumint(9) unsigned NOT NULL,
      `IDRCRAdjoint` mediumint(9) unsigned NOT NULL,
      `IDIC` mediumint(9) unsigned NOT NULL,
      `IDCM` mediumint(9) unsigned NOT NULL,
      `IDProduit` mediumint(9) unsigned NOT NULL,
      `IDSociete` mediumint(9) unsigned NOT NULL,
      PRIMARY KEY (`Nom`),
      KEY `IDMarche` (`IDMarche`)
    ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 AUTO_INCREMENT=245 ;
     
     
     
    INSERT INTO `marche` (`IDMarche`, `Nom`, `NomSimplifie`, `IDResponsable`, `IDIP`, `IDRCR`, `IDRCRAdjoint`, `IDIC`, `IDCM`, `IDProduit`, `IDSociete`) VALUES
    (95, 'Assistance à maîtrise d''oeuvre pour le marché A', 'Assistance MO - A', 29, 30, 31, 32, 33, 34, 188, 5),
    (96, 'Assistance à maîtrise d''oeuvre pour le marché B', 'Assistance MO - B', 36, 37, 38, 39, 40, 41, 213, 12);

  10. #10
    Expert éminent
    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 818
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 818
    Billets dans le blog
    14
    Par défaut
    Citation Envoyé par Australia Voir le message
    pour la clé primaire, je suis trop avancé dans le projet pour la modifier ...
    C'est pourtant bel et bien IDMarche qui devrait être clé primaire en tant qu'identifiant anonyme et auto-incrémenté !
    Voir l'article de SQLPro sur ce qu'est une bonne clé.

    Donc apparemment c'est le texte "Assistance à maîtrise d'oeuvre pour le marché X" qui va dans la colonne "Nom" ?

    Ce texte ne faisant pas plus de 255 caractères, il n'y a pas de souci sur la longueur.

    As-tu déjà des lignes dans ta table ?
    Si oui, n'y en a t-il pas déjà une avec un nom que tu essaies d'insérer ?
    C'est en tout cas ce que dit le message d'erreur "duplicate entry...".

    Quant à l'apostrophe non fermée, il faut chercher dans les données à insérer.
    Tes données sont entourées d'apostrophes. Si tu as une apostrophe à l'intérieur d'une donnée, comme c'est le cas dans le texte "Assistance à maîtrise d'oeuvre pour le marché X", il faut que cette apostrophe soit doublée, comme c'est fait dans ton exemple de trois lignes.

    A toi de chercher où est l'erreur. Chez moi, ton code s'est exécuté sans erreur et j'ai bien les deux lignes données insérées.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole, en retraite... mais toujours Autoentrepreneur à l'occasion.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  11. #11
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut
    en fait, ca marche chez moi si je passe par l'onglet SQL (je suppose que c'est ce que tu as fait)
    par contre, si je veux passer par "Importer" un fichier .sql,
    ben la ca marche pas

    peut être que mon éditeur de texte transforme les caractères bizarres (accents et compagnie),
    je teste en changeant d'éditeur ...

  12. #12
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    270
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 270
    Par défaut
    Bon, j'ai réussi à résoudre mon problème, je sais pas si ca va aider grand monde mais bon, j'y vais quand même de ma petite solution :

    alors en fait, plutot que de faire un import export depuis phpMyAdmin,
    je fais un export de ma base avec sqldump puis je fais un import avec phpMyAdmin

    voila, un grand à Cinephil de s'être penché sur mon cas (pas trop désespéré j'espère)

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [MySQL-5.1] Export, puis import dans le même SQL : problème d'apostrophe
    Par c13303 dans le forum Administration
    Réponses: 4
    Dernier message: 23/04/2014, 17h29
  2. [MySQL-5.6] Exportation et importation de tables en sql
    Par js8bleu dans le forum Administration
    Réponses: 0
    Dernier message: 02/10/2013, 03h47
  3. Export Import SQL SERVEUR 2000
    Par ray69 dans le forum MS SQL Server
    Réponses: 0
    Dernier message: 08/01/2010, 12h12
  4. Import/Export de données (sql server) en ASP.NET 2005
    Par nkonito dans le forum ASP.NET
    Réponses: 4
    Dernier message: 24/03/2008, 17h50
  5. Réponses: 7
    Dernier message: 11/08/2006, 16h03

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo