Partage
  • Partager sur Facebook
  • Partager sur Twitter

erreur syntaxe pour exporter une base

un problème de version ?

Sujet résolu
    27 novembre 2005 à 13:42:51

    Bonjour !
    Je tente d'exporter une base de MySQL 4.1.9-max en local (phpMyadmin 2.6.1), vers ma base sur OVH : phpMyadmin 2.5.7 (SQL8)
    Et ça coince :

    MySQL a répondu:

    #1064 - You have an error in your SQL syntax near 'ENGINE=MyISAM DEFAULT CHARACTER SET utf8 COLLATE utf8_bin AUTO_INCREMENT=31 ' at line 16

    Voici le début de la requête :

    CREATE TABLE `temoignages` (
      `ID` int(11) NOT NULL AUTO_INCREMENT,
      `prenom` varchar(30) NOT NULL DEFAULT '',
      `genre_tem` varchar(100) NOT NULL DEFAULT '',
      `titre_tem` varchar(70) NOT NULL DEFAULT '',
      `sstitre_tem` varchar(130) NOT NULL DEFAULT '',
      `texte` text NOT NULL,
      `signature` varchar(50) NOT NULL DEFAULT '',
      `rep1` text NOT NULL,
      `rep2` text NOT NULL,
      `rep3` text NOT NULL,
      `comm` text NOT NULL,
      `ID_theme` varchar(50) NOT NULL DEFAULT '',
      PRIMARY KEY  (`ID`)
    )
    ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=31 ;
     

    INSERT INTO `temoignages` VALUES (3, 'nina', 'Secret d''une vie', '', '', '', '', '', '', '', '', '');
    INSERT INTO `temoignages` VALUES (2, 'ri


    Vous auriez une idée sur le pourquoi du comment ?
    Merci !
    L.V.
    • Partager sur Facebook
    • Partager sur Twitter
      27 novembre 2005 à 13:53:13

      Tu vires cette ligne
      ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=31 ;

      et tu ré-essayes ?
      • Partager sur Facebook
      • Partager sur Twitter
        27 novembre 2005 à 14:18:01

        Merci Macleto,
        Ça a marché... pour s'arrêter trois lignes plus loin !!!
        C'est quoi ce coup-ci tu crois ?
        (et en deux mots tu pourrais m'expliquer ce que c'est cette ligne que tu m'as fait enlever ?)

        CREATE TABLE `temoignages` (

        `ID` int( 11 ) NOT NULL AUTO_INCREMENT ,
        `prenom` varchar( 30 ) NOT NULL DEFAULT '',
        `genre_tem` varchar( 100 ) NOT NULL DEFAULT '',
        `titre_tem` varchar( 70 ) NOT NULL DEFAULT '',
        `sstitre_tem` varchar( 130 ) NOT NULL DEFAULT '',
        `texte` text NOT NULL ,
        `signature` varchar( 50 ) NOT NULL DEFAULT '',
        `rep1` text NOT NULL ,
        `rep2` text NOT NULL ,
        `rep3` text NOT NULL ,
        `comm` text NOT NULL ,
        `ID_theme` varchar( 50 ) NOT NULL DEFAULT '',
        PRIMARY KEY ( `ID` )
        ) INSERT INTO `temoignages`
        VALUES ( 3, 'nina', 'Secret d''une vie', '', '', '', '', '', '', '', '', '' )

        MySQL a répondu:


        #1064 - You have an error in your SQL syntax near 'INSERT INTO `temoignages` VALUES (3, 'nina', 'Secret d''une vie', '', '', '', ''' at line 20 


        Edit : c'était un problème évident de NULL ou NOT NULL !!!
        J'ai rectifié.
        Mais maintenant j'ai ça et là je vois pas du tout pourquoi ça passe pas.

        CREATE TABLE `temoignages` (

        `ID` int( 11 ) NOT NULL AUTO_INCREMENT ,
        `prenom` varchar( 30 ) NOT NULL DEFAULT '',
        `genre_tem` varchar( 100 ) NOT NULL DEFAULT '',
        `titre_tem` varchar( 70 ) NOT NULL DEFAULT '',
        `sstitre_tem` varchar( 130 ) DEFAULT NULL ,
        `texte` text NOT NULL ,
        `signature` varchar( 50 ) NOT NULL DEFAULT '',
        `rep1` text,
        `rep2` text,
        `rep3` text,
        `comm` text,
        `ID_theme` varchar( 50 ) NOT NULL DEFAULT '',
        PRIMARY KEY ( `ID` )
        ) INSERT INTO `temoignages`
        VALUES ( 2, 'richard', 'Châtiment corporel', 'Recevoir une bonne correction', 'Le temps des punitions corporelles et des brimades', 'Il est fait souvent allusion à la violence des parents sur leurs enfants, mais rarement des enseignants sur des jeunes déjà adolescents.\r\n\r\nAinsi à l''approche..........comme autrefois un bébé de la maternelle.', 'Richard', '', '', '', 'La "bonne correction" : l''expression ressemble à..... rejaillissent et font encore plus mal.\r\n\r\n', '1' ) 


        C'est quoi \r\n\r\n ?????
        • Partager sur Facebook
        • Partager sur Twitter
          27 novembre 2005 à 16:33:43

          il ne faut pas un point-virgule après la parenthèse fermante de create table ?
          \r\n signifie "sauter une ligne et revenir au début de la ligne". dans un <textarea> ou un fichier texte, c'est ce qui est insérer quand tu tapes sur entrée.
          • Partager sur Facebook
          • Partager sur Twitter
            27 novembre 2005 à 17:27:23

            Merci pour les explicationx \r\n...

            Pour le reste, l'erreur précédente est revenue.
            J'ai fait des essais. Pour être certaine que tout était bien pris en compte, j'ai fermé et rouvert phpMyadmin à chaque fois.
            Donc, quand je fais ça comme requête :


            CREATE TABLE `temoignages` (
              `ID` int(11) NOT NULL AUTO_INCREMENT,
              `prenom` varchar(30) NOT NULL DEFAULT '',
              `genre_tem` varchar(100) NOT NULL DEFAULT '',
              `titre_tem` varchar(70) NOT NULL DEFAULT '',
              `sstitre_tem` varchar(130) DEFAULT NULL,
              `texte` text NOT NULL,
              `signature` varchar(50) NOT NULL DEFAULT '',
              `rep1` text,
              `rep2` text,
              `rep3` text,
              `comm` text,
              `ID_theme` varchar(50) NOT NULL DEFAULT '',
              PRIMARY KEY  (`ID`)
            ) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=31 ;


            j'ai cette réponse :

            #1064 - You have an error in your SQL syntax near 'ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=31 ' at line 15


            Si j'enlève à partir d'ENGINE... en laissant le point-virgule :

            CREATE TABLE `temoignages` (
              `ID` int(11) NOT NULL AUTO_INCREMENT,
              `prenom` varchar(30) NOT NULL DEFAULT '',
              `genre_tem` varchar(100) NOT NULL DEFAULT '',
              `titre_tem` varchar(70) NOT NULL DEFAULT '',
              `sstitre_tem` varchar(130) DEFAULT NULL,
              `texte` text NOT NULL,
              `signature` varchar(50) NOT NULL DEFAULT '',
              `rep1` text,
              `rep2` text,
              `rep3` text,
              `comm` text,
              `ID_theme` varchar(50) NOT NULL DEFAULT '',
              PRIMARY KEY  (`ID`)
            )  ;


            j'ai ça :

            #1064 - You have an error in your SQL syntax near 'ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ' at line 14


            enfin si j'enlève de ENGINE au point-virgule inclus :

            CREATE TABLE `temoignages` (
              `ID` int(11) NOT NULL AUTO_INCREMENT,
              `prenom` varchar(30) NOT NULL DEFAULT '',
              `genre_tem` varchar(100) NOT NULL DEFAULT '',
              `titre_tem` varchar(70) NOT NULL DEFAULT '',
              `sstitre_tem` varchar(130) DEFAULT NULL,
              `texte` text NOT NULL,
              `signature` varchar(50) NOT NULL DEFAULT '',
              `rep1` text,
              `rep2` text,
              `rep3` text,
              `comm` text,
              `ID_theme` varchar(50) NOT NULL DEFAULT '',
              PRIMARY KEY  (`ID`)
            )


            J'ai ça, ça coince sur le premier enregistrement :

            CREATE TABLE `temoignages` (

            `ID` int( 11 ) NOT NULL AUTO_INCREMENT ,
            `prenom` varchar( 30 ) NOT NULL DEFAULT '',
            `genre_tem` varchar( 100 ) NOT NULL DEFAULT '',
            `titre_tem` varchar( 70 ) NOT NULL DEFAULT '',
            `sstitre_tem` varchar( 130 ) DEFAULT NULL ,
            `texte` text NOT NULL ,
            `signature` varchar( 50 ) NOT NULL DEFAULT '',
            `rep1` text,
            `rep2` text,
            `rep3` text,
            `comm` text,
            `ID_theme` varchar( 50 ) NOT NULL DEFAULT '',
            PRIMARY KEY ( `ID` )
            ) INSERT INTO `temoignages`
            VALUES ( 2, 'richard', 'Châtiment corporel', 'Recevoir une bonne correction', 'Le temps des punitions corporelles et des brimades', 'Il est fait souvent allusion à la violence des parents sur leurs enfants, mais rarement des enseignants sur des jeunes déjà adolescents.\r\n\r\nAinsi à l''approche..........comme autrefois un bébé de la maternelle.', 'Richard', '', '', '', 'La "bonne correction" : l''expression ressemble à..... rejaillissent et font encore plus mal.\r\n\r\n', '1' )

            #1064 - You have an error in your SQL syntax near 'INSERT INTO `temoignages` VALUES (2, 'richard', 'Châtiment corporel', 'Recevoir ' at line 17


            Que faut-il en déduire à votre avis ?....

            EDIT : eh ben il faut en déduire qu'il ne faut pas d'espace entre la parenthèse fermante de create table et le point-virgule.
            Maintenant ça marche !
            • Partager sur Facebook
            • Partager sur Twitter

            erreur syntaxe pour exporter une base

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown