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

PHP & Base de données Discussion :

Problème de requête SQL [MySQL]


Sujet :

PHP & Base de données

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 43
    Par défaut Problème de requête SQL
    Bonjour,

    j'ai un problème avec SQL car je voudrais exécuter la création des tables de ma BD avec un bouton sur une page PHP.

    quand j'exécute le code dans PhpMyAdmin ça passe nikel et ça créé mes tables.
    mais quand j'exécute la requete avec
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $req= "la requete";
    $query= mysql_query($req);
    Il n'y a rien de créé !

    Voici un bout de ma requete :

    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
    29
    30
    31
    32
    33
    34
    CREATE TABLE `_sav_admins_traitement` (
      `id` int(11) NOT NULL auto_increment,
      `pseudo` varchar(128) NOT NULL,
      `password` varchar(128) NOT NULL,
      `domaine` varchar(128) NOT NULL,
      `niveau` int(11) NOT NULL,
      PRIMARY KEY  (`id`)
    ) ENGINE=MyISAM DEFAULT CHARSET=latin1 COMMENT='Table des admins' AUTO_INCREMENT=1 ;
     
     
    INSERT INTO `_sav_admins_traitement` VALUES (1, 'Laurent', 'toto', 'Factures', 20);
    INSERT INTO `_sav_admins_traitement` VALUES (2, 'Olivier', 'toto', 'Artistes', 10);
     
     
    CREATE TABLE `_sav_domaines` (
      `id` int(2) NOT NULL auto_increment,
      `domaineFR` varchar(128) collate latin1_bin NOT NULL,
      `domaineEN` varchar(128) collate latin1_bin NOT NULL,
      PRIMARY KEY  (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_bin AUTO_INCREMENT=1 ;
     
     
    INSERT INTO `_sav_domaines` VALUES (1, 0x4172746973746573, 0x417274697374);
    INSERT INTO `_sav_domaines` VALUES (2, 0x4661637475726573, 0x496e766f69636520);
     
     
    CREATE TABLE `_sav_messagestandard` (
      `id` int(5) NOT NULL auto_increment,
      `sujetFR` varchar(128) collate latin1_bin NOT NULL,
      `sujetEN` varchar(128) collate latin1_bin NOT NULL,
      `FR` text collate latin1_bin NOT NULL,
      `EN` text collate latin1_bin NOT NULL,
      PRIMARY KEY  (`id`)
    ) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_bin AUTO_INCREMENT=1 ;
    etc...

    si quelqu'un voit d'où vient le problème , merci de m'aiguiller !

  2. #2
    Membre chevronné
    Profil pro
    Inscrit en
    Février 2004
    Messages
    496
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Février 2004
    Messages : 496
    Par défaut
    Salut,

    c'est laquelle qui pose problème (tu ne peux executer qu'une requête à la fois avec mysql_query)?

  3. #3
    Membre averti
    Inscrit en
    Mars 2006
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mars 2006
    Messages : 17
    Par défaut
    Extrait de la doc PHP :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    resource mysql_query ( string  query [, resource link_identifier] )
     
    mysql_query() sends a query (to the currently active  database on
      the server that's associated with the specified link_identifier). 
    
    Parameters
      query  A SQL query 
        The query string should not end with a semicolon.
    Comme le dit billoum, c'est une seule requète, sans point virgule, et si le problème persiste, ajoute cette ligne après, cela peut aider à comprendre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    if (!$query)
       echo mysql_error();
    

  4. #4
    Membre Expert Avatar de Amara
    Profil pro
    Inscrit en
    Juillet 2004
    Messages
    2 688
    Détails du profil
    Informations personnelles :
    Localisation : France, Sarthe (Pays de la Loire)

    Informations forums :
    Inscription : Juillet 2004
    Messages : 2 688
    Par défaut
    Oui c'est mieux de toujours faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    mysql_query($requete) or die(mysql_error);

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

    Informations forums :
    Inscription : Juillet 2005
    Messages : 43
    Par défaut
    ok merci à tous !

    je ne savais pas qu'il fallait exécuter qu'une requete par mysqlquery
    enfin qu'un point virgule dedans ^^

    a+

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

Discussions similaires

  1. Problème de requête SQL avec instruction TRANSFORM
    Par Nosper dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 21/06/2005, 16h15
  2. problème de requète SQL pour formulaire
    Par en_stage dans le forum Requêtes et SQL.
    Réponses: 15
    Dernier message: 21/06/2005, 12h21
  3. [SQL] Problème de requête SQL de plus de 8060 caractères ?
    Par webtheque dans le forum MS SQL Server
    Réponses: 13
    Dernier message: 06/04/2005, 15h07
  4. [SQLserver2000][SQLServer CE] problème de requête SQL
    Par JBernn dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 27/01/2005, 09h29
  5. Problème de requète SQL dans un Requery
    Par Keraccess dans le forum Requêtes et SQL.
    Réponses: 7
    Dernier message: 22/10/2004, 14h58

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