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

Requêtes MySQL Discussion :

Double requete avec alter table


Sujet :

Requêtes MySQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5
    Points : 6
    Points
    6
    Par défaut Double requete avec alter table
    Bonjour,

    Merci de votre aide sur le pblm suivant :

    je dois faire plusieurs requetes avec alter table histoire de modifier pleins de tables en bases pour un moteur multilingue dynamique.

    $sql_ajout = "ALTER TABLE peel_affiliation
    ADD titre_".strtolower($frm['lang'])." VARCHAR( 100 ) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
    ADD texte_".strtolower($frm['lang'])." TEXT CHARACTER SET latin1 COLLATE latin1_bin NOT NULL;
    ALTER TABLE peel_articles
    ADD surtitre_".strtolower($frm['lang'])." VARCHAR( 100 ) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
    ADD titre_".strtolower($frm['lang'])." VARCHAR( 100 ) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
    ADD texte_".strtolower($frm['lang'])." TEXT CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
    ADD chapo_".strtolower($frm['lang'])." TEXT CHARACTER SET latin1 COLLATE latin1_bin NOT NULL;";
    mysql_query($sql_ajout) or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());

    et voic l'erreur que j'ai :

    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 ';ALTER TABLE peel_articles ADD surtitre_it VARCHAR( 100 ) CHARACTER SET lati' at line 3


    Merci de votre aide.

    Je précise que je suis allé sur la doc officielle mysql en ligne et rien vu sur ça.

    Merci

    Bdorbo

  2. #2
    Membre éclairé Avatar de pop_up
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    877
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Avril 2006
    Messages : 877
    Points : 786
    Points
    786
    Par défaut
    A tu essayé de ne tester que ca :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    $sql_ajout = "ALTER TABLE peel_affiliation
    ADD titre_".strtolower($frm['lang'])." VARCHAR( 100 ) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
    ADD texte_".strtolower($frm['lang'])." TEXT CHARACTER SET latin1 COLLATE latin1_bin NOT NULL;";
     
    mysql_query($sql_ajout) or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    puis uniquement ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    $sql_ajout = "ALTER TABLE peel_articles
    ADD surtitre_".strtolower($frm['lang'])." VARCHAR( 100 ) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
    ADD titre_".strtolower($frm['lang'])." VARCHAR( 100 ) CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
    ADD texte_".strtolower($frm['lang'])." TEXT CHARACTER SET latin1 COLLATE latin1_bin NOT NULL,
    ADD chapo_".strtolower($frm['lang'])." TEXT CHARACTER SET latin1 COLLATE latin1_bin NOT NULL;";
     
    mysql_query($sql_ajout) or DIE('Une erreur de connexion &agrave; la base s est produite ' . __LINE__ . '.<p>' . MYSQL_ERROR());
    Si les deux marchent alors c'est la maniere dont elles se suivent qu'il aime pas.

    Enfin moi c'est ce que je testerai si j'avais ce pb

    courage

  3. #3
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2005
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5
    Points : 6
    Points
    6
    Par défaut
    Salut,

    merci de ta réponse.

    Oui j'ai bien essayé de mettre les requetes une a une, et pas de pblm.
    J'ai même mis la requete dans phpmyadmin (en enlevant les$_SESSION bien sur...)
    et c ok.
    Dans la doc officielle, j'ai rien vu sur ça...

    Merci encore à tous ceux qui pourront m'aider.

    Bdorbo


  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Points : 1 357
    Points
    1 357
    Par défaut
    Bonjour,

    Il est écrit dans la doc officielle :
    La chaîne de requête ne doit pas se terminer par un point-virgule.
    Ce qui correspond à ton message d'erreur.

    Donc, tu ne peux pas envoyer 2 requêtes dans une même chaîne.

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

Discussions similaires

  1. Requete avec une table de correspondance.
    Par gregb34 dans le forum Langage SQL
    Réponses: 3
    Dernier message: 19/02/2007, 18h53
  2. Requete avec 2 tables
    Par Nicos77 dans le forum Requêtes
    Réponses: 4
    Dernier message: 26/01/2007, 15h04
  3. pb de requete avec 4 tables
    Par fscli dans le forum Access
    Réponses: 1
    Dernier message: 30/05/2006, 22h29
  4. Double requete avec curseur.
    Par elkamy dans le forum Langage SQL
    Réponses: 2
    Dernier message: 11/01/2006, 11h35
  5. Renommer une colonne avec ALTER TABLE...
    Par David.V dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 01/07/2004, 10h33

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