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 chargement de script [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Membre actif Avatar de Purple Haze
    Profil pro
    Inscrit en
    Février 2007
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 293
    Points : 242
    Points
    242
    Par défaut problème de chargement de script
    Bonjour,
    j'ai un problème lorsque je charge un script (d'une table qui n'existe pas encore) sur un serveur apache à partir de l'invite de commande : j'obtiens un message d'erreur qui me dit que la table ne peut être créer car elle existe déjà. De là, je mets le CREATE TABLE en commentaire et je recharger et là message : ERREUR la table "xxx" n'existe pas.
    Quelqu'un pourrat-il m'éclairer ?
    merci d'avance !

  2. #2
    Rédacteur

    Homme Profil pro
    Geek entrepreneur
    Inscrit en
    Novembre 2004
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Geek entrepreneur

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 224
    Points : 2 373
    Points
    2 373
    Par défaut
    Peux tu nous écrire ton script ici ? (tout, y compris ce que tu penses êtres des commentaires).

    Combien de bases as tu sur ton server mysql ?

  3. #3
    Membre actif Avatar de Purple Haze
    Profil pro
    Inscrit en
    Février 2007
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 293
    Points : 242
    Points
    242
    Par défaut
    j'ai copier le script à partir de PHPmyadmin en cliquant sur exporter et cela me donne ceci :


    #CREATE TABLE `artiste` (
    ( `num_artiste` varchar(50) NOT NULL default '',
    `nom_artiste` varchar(50) NOT NULL default '',
    `nationalité` varchar(50) NOT NULL default '',
    `num_disque` varchar(50) NOT NULL default ''
    ) TYPE=MyISAM;



    INSERT INTO `artiste` (`num_artiste`, `nom_artiste`, `nationalité`, `num_disque`) VALUES ('1', 'Denez Prigeant', 'breton', '5');
    INSERT INTO `artiste` (`num_artiste`, `nom_artiste`, `nationalité`, `num_disque`) VALUES ('3', 'Saez', 'français', '4');
    INSERT INTO `artiste` (`num_artiste`, `nom_artiste`, `nationalité`, `num_disque`) VALUES ('2', 'Ravi Shankar', 'indien', '3');
    INSERT INTO `artiste` (`num_artiste`, `nom_artiste`, `nationalité`, `num_disque`) VALUES ('4', 'White Stripes', 'americain', '1');
    INSERT INTO `artiste` (`num_artiste`, `nom_artiste`, `nationalité`, `num_disque`) VALUES ('5', 'Muse', 'anglais', '2');



    #CREATE TABLE `disque` (
    `num_disque` varchar(50) NOT NULL default '',
    `titre_disque` varchar(50) NOT NULL default '',
    `num_artiste` varchar(50) NOT NULL default '',
    `num_propriétaire` varchar(50) NOT NULL default ''
    ) TYPE=MyISAM;



    INSERT INTO `disque` (`num_disque`, `titre_disque`, `num_artiste`, `num_propriétaire`) VALUES ('1', 'white blood cells', '4', '3');
    INSERT INTO `disque` (`num_disque`, `titre_disque`, `num_artiste`, `num_propriétaire`) VALUES ('2', 'origin of symetry', '5', '4');
    INSERT INTO `disque` (`num_disque`, `titre_disque`, `num_artiste`, `num_propriétaire`) VALUES ('3', 'meditation & relaxation', '2', '1');
    INSERT INTO `disque` (`num_disque`, `titre_disque`, `num_artiste`, `num_propriétaire`) VALUES ('4', 'debbie', '3', '2');
    INSERT INTO `disque` (`num_disque`, `titre_disque`, `num_artiste`, `num_propriétaire`) VALUES ('5', 'irvi', '1', '3');



    #CREATE TABLE `proprietaire` (
    `num_proprietaire` varchar(50) NOT NULL default '',
    `nom_proprietaire` varchar(50) NOT NULL default '',
    `num_disque` varchar(50) NOT NULL default '',
    `telephone` varchar(50) NOT NULL default ''
    ) TYPE=MyISAM;



    INSERT INTO `proprietaire` (`num_proprietaire`, `nom_proprietaire`, `num_disque`, `telephone`) VALUES ('1', 'bob', '3', '0214568596');
    INSERT INTO `proprietaire` (`num_proprietaire`, `nom_proprietaire`, `num_disque`, `telephone`) VALUES ('2', 'joe', '4', '0125478574');
    INSERT INTO `proprietaire` (`num_proprietaire`, `nom_proprietaire`, `num_disque`, `telephone`) VALUES ('3', 'michel', '1, 5', '0521321363');
    INSERT INTO `proprietaire` (`num_proprietaire`, `nom_proprietaire`, `num_disque`, `telephone`) VALUES ('4', 'james', '2', '0412124578');

    actuellement je n'ai que 2 base de données sur le serveur

  4. #4
    Membre actif Avatar de Purple Haze
    Profil pro
    Inscrit en
    Février 2007
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 293
    Points : 242
    Points
    242
    Par défaut
    c'est une base fictive car comme je suis stagiaire, je préfers tester avant d'appliquer !

  5. #5
    Membre actif Avatar de Purple Haze
    Profil pro
    Inscrit en
    Février 2007
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 293
    Points : 242
    Points
    242
    Par défaut
    voilà mon script perso fait à la main et j'ai toujours le même problème la base ne peut être crée car elle existe déjà (ERROR 1007) :

    CREATE DATABASE discographie;

    CONNECT discographie;

    CREATE TABLE tbl_artiste
    (
    id INT NOT NULL auto_increment,
    num_artiste VARCHAR (50) NOT NULL,
    nom_artiste VARCHAR (50) NOT NULL,
    nationalite VARCHAR (50) NOT NULL,
    num_disque VARCHAR (50) NOT NULL,
    PRIMARY KEY (id)
    );

    CREATE TABLE tbl_disque
    (
    id INT NOT NULL auto_increment,
    num_disque VARCHAR (50) NOT NULL,
    titre_disque VARCHAR (50) NOT NULL,
    num_artiste VARCHAR (50) NOT NULL,
    num_proprietaire VARCHAR (50) NOT NULL,
    PRIMARY KEY (id)
    );

    CREATE TABLE tbl_proprietaire
    (
    id INT NOT NULL auto_increment,
    num_proprietaire VARCHAR (50) NOT NULL,
    nom_proprietaire VARCHAR (50) NOT NULL,
    num_disque VARCHAR (50) NOT NULL,
    telephone VARCHAR (50) NOT NULL,
    PRIMARY KEY (id)
    );


    INSERT INTO tbl_artiste VALUES ("num_artiste","nom_artiste","nationalite","num_disque")
    ("1","Denez Prigeant","breton","5"),
    ("2","Ravi Shankar","indien","3"),
    ("3","SAEZ","français","4"),
    ("4","White stripes","americain","1"),
    ("5","Muse","anglais","2");

    INSERT INTO tbl_disque VALUES
    ("1","white blood cells","4","3"),
    ("2","origin of symetry","5","4"),
    ("3","meditation & relaxation","2","1"),
    ("4","debbie","3","2"),
    ("5","irvi","1","3");

    INSERT INTO tbl_proprietaire VALUES
    ("1","bob","3","0214256532"),
    ("2","joe","4","0125456325"),
    ("3","michel","1, 5","0546251436"),
    ("4","james","2","0425147896");

    Je drop dans phpmyadmin, reload la base et là j'ai ERROR 1064 syntaxe ligne 39.
    et si je reload j'ai de nouveau ERROR 1007.
    auriez vous une idée du problème ?
    merci

  6. #6
    Rédacteur

    Homme Profil pro
    Geek entrepreneur
    Inscrit en
    Novembre 2004
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Geek entrepreneur

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 224
    Points : 2 373
    Points
    2 373
    Par défaut
    Pour le second script, mysql te dit que tu as une erreur dans les inserts. Cependant il doit réussir a faire les create. Du coup au second passage tes tables existent.

    Tu devrais faire tes create et ensuite tester tes inserts pour les corriger (sans doute un pb de quote).
    Sur les Create, tu peux faire un "Create if no exists" ou même un DROP de la table avant pour être sur DROP TABLE matable IF EXISTS

  7. #7
    Membre actif Avatar de Purple Haze
    Profil pro
    Inscrit en
    Février 2007
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 293
    Points : 242
    Points
    242
    Par défaut
    MERCI BEAUCOUP: cela résout enfin le problème d'existance ou de non-existance.
    Cependant j'ai désormais un problème de syntaxe sur "if exists". Voici le script :

    DROP DATABASE discographie IF EXISTS;

    CREATE DATABASE discographie IF NOT EXISTS;

    CONNECT discographie;

    CREATE IF NOT EXISTS TABLE tbl_artiste
    (
    id INT NOT NULL auto_increment,
    num_artiste VARCHAR (50) NOT NULL,
    nom_artiste VARCHAR (50) NOT NULL,
    nationalite VARCHAR (50) NOT NULL,
    num_disque VARCHAR (50) NOT NULL,
    PRIMARY KEY (id)
    );

    CREATE IF NOT EXISTS TABLE tbl_disque
    (
    id INT NOT NULL auto_increment,
    num_disque VARCHAR (50) NOT NULL,
    titre_disque VARCHAR (50) NOT NULL,
    num_artiste VARCHAR (50) NOT NULL,
    num_proprietaire VARCHAR (50) NOT NULL,
    PRIMARY KEY (id)
    );

    CREATE IF NOT EXISTS TABLE tbl_proprietaire
    (
    id INT NOT NULL auto_increment,
    num_proprietaire VARCHAR (50) NOT NULL,
    nom_proprietaire VARCHAR (50) NOT NULL,
    num_disque VARCHAR (50) NOT NULL,
    telephone VARCHAR (50) NOT NULL,
    PRIMARY KEY (id)
    );

    Qu'ais-je mal fais ?
    Merci encore !

  8. #8
    Rédacteur

    Homme Profil pro
    Geek entrepreneur
    Inscrit en
    Novembre 2004
    Messages
    1 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Geek entrepreneur

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 224
    Points : 2 373
    Points
    2 373
    Par défaut
    Si c'est un problème de syntaxe, je te conseille fortement la doc en ligne de mysql :

    http://dev.mysql.com/doc/refman/5.0/en/drop-table.html

  9. #9
    Membre actif Avatar de Purple Haze
    Profil pro
    Inscrit en
    Février 2007
    Messages
    293
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 293
    Points : 242
    Points
    242
    Par défaut
    merci pour ton aide !!!!!

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

Discussions similaires

  1. [OC][ASE]Problème de chargement de pilote ODBC
    Par Joce dans le forum Sybase
    Réponses: 10
    Dernier message: 06/01/2006, 09h08
  2. problème de chargement dll
    Par tophque dans le forum MFC
    Réponses: 8
    Dernier message: 18/11/2005, 15h14
  3. [SQL*Loader] Problème de chargement de nombres
    Par sebduth dans le forum Oracle
    Réponses: 10
    Dernier message: 18/11/2005, 10h07
  4. [FLASH 8] Problème de chargement de swf
    Par memess dans le forum Flash
    Réponses: 3
    Dernier message: 17/11/2005, 09h41
  5. Problème de chargement de police de caractères
    Par Laurent Gomila dans le forum Windows
    Réponses: 4
    Dernier message: 19/08/2004, 16h11

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