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 :

Duppliquer un champ avec plus de 34 000 lignes [MySQL]


Sujet :

PHP & Base de données

  1. #1
    Inactif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 101
    Points : 67
    Points
    67
    Par défaut Duppliquer un champ avec plus de 34 000 lignes
    Bonjour,

    Je cherche le moyen de duppliquer un champs en masse soit 34 000 ligne à peu prés.

    Voici la db, comme vous le voyez, j'ai besoin de dupliquer le champ cityid pour créer le champ pos avec les mêmes donnée au niveau de l'insert.

    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
    --
    -- Structure de la table `ville`
    --
     
    CREATE TABLE IF NOT EXISTS `xzclf_areas` (
      `areaid` smallint(5) unsigned NOT NULL auto_increment,
      `cityid` smallint(5) unsigned NOT NULL default '0',
      `pos` smallint(5) unsigned NOT NULL default '0',
      `areaname` varchar(50) NOT NULL default '',
      `cp` varchar(6) NOT NULL default '',
      `lat` float(7,6) NOT NULL default '',
      `lon` float(7,6) NOT NULL default '',
      `enabled` enum('0','1') NOT NULL default '0',
      `timestamp` timestamp NOT NULL default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP,
      PRIMARY KEY  (`areaid`),
      KEY `pos` (`pos`),
      KEY `cityid` (`cityid`),
      KEY `enabled` (`enabled`)
    ) ENGINE=MyISAM  DEFAULT CHARSET=latin1 AUTO_INCREMENT=34488 ;
     
    INSERT INTO `xzclf_areas` (`areaid`, `cityid`, `pos`, `areaname`, `cp`, `lat`, `lon`, `enabled`, `timestamp`) VALUES
    (1, 1, 'Amareins', '01090', 9.999999, 4.783514, '1', '2008-12-03 01:02:56'),
    (2, 1, 'Ambérieu-en-Bugey', '01500', 9.999999, 5.358829, '1', '2008-12-03 01:02:56'),
    (3, 1, 'Ambérieux-en-Dombes', '01330', 9.999999, 4.903213, '1', '2008-12-03 01:02:56'),
    (4, 1, 'Ambléon', '01300', 9.999999, 5.601381, '1', '2008-12-03 01:02:56'),
    (5, 1, 'Ambronay', '01500', 9.999999, 5.360247, '1', '2008-12-03 01:02:56'),
    (6, 1, 'Ambutrix', '01500', 9.999999, 5.338468, '1', '2008-12-03 01:02:56'),
    (7, 1, 'Andert-et-Condon', '01300', 9.999999, 5.654058, '1', '2008-12-03 01:02:56'),
    (8, 1, 'Anglefort', '01350', 9.999999, 5.808989, '1', '2008-12-03 01:02:56'),
     
    Environ 34 000 lignes
    Comment ferez vous ? merci pour vos réponse
    La vitesse de la lumière étant supérieure à celle du son, beaucoup de gens sont brillants jusqu'à ce qu'ils ouvrent leur bouche !!

  2. #2
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Mars 2009
    Messages
    29
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mars 2009
    Messages : 29
    Points : 33
    Points
    33
    Par défaut intéressant mais pourquoi....
    Bonjour,

    J'ai bien vu l'exemple que vous donnez, mais permettez-moi cette question triviale pourquoi dupliquer le champ cityid, pour avoir les mêmes données dans pos ?

    Quelle besoin justifie une telle redondance ?

    Quand aux méthodes pour y faire, une sql update devrait être en mesure de le faire mais ça risque de prendre du temps.

    Bonne chance.

  3. #3
    Inactif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 101
    Points : 67
    Points
    67
    Par défaut
    merci pour votre réponse.

    En faite j'ai 2 autre tables en relation (région/département) avec celle-ci, cityid corresponds à id du département et pos est simplement la position qui me permet de faire un tri par position ou nom (areaname).

    Quand aux méthodes pour y faire, une sql update devrait être en mesure de le faire mais ça risque de prendre du temps.
    Pourriez vous développer svp ?
    La vitesse de la lumière étant supérieure à celle du son, beaucoup de gens sont brillants jusqu'à ce qu'ils ouvrent leur bouche !!

  4. #4
    Membre éclairé
    Avatar de djayp
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    295
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 295
    Points : 687
    Points
    687
    Par défaut
    Salut,

    Après avoir créer ton nouveau champ pos, tu peux utiliser la requête suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    UPDATE ville SET pos = cityid
    Toutes les lignes seront alors modifiées et ce en quelques secondes !

    A++

  5. #5
    Inactif
    Profil pro
    Inscrit en
    Septembre 2006
    Messages
    101
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2006
    Messages : 101
    Points : 67
    Points
    67
    Par défaut
    merci à vous deux pour votre aide.
    La vitesse de la lumière étant supérieure à celle du son, beaucoup de gens sont brillants jusqu'à ce qu'ils ouvrent leur bouche !!

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

Discussions similaires

  1. [XL-2013] Créer un graphique à partir d'une table de plus de 100 000 lignes
    Par ClemQ dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 24/06/2014, 12h11
  2. Réponses: 8
    Dernier message: 07/12/2011, 09h35
  3. Réponses: 1
    Dernier message: 01/03/2011, 17h19
  4. gestion de BDD (de plus de 200 000 lignes)
    Par jackfred dans le forum Excel
    Réponses: 3
    Dernier message: 20/04/2007, 11h04
  5. [Généralités] Un type de champ avec taille plus de 255?
    Par devlopassion dans le forum Access
    Réponses: 7
    Dernier message: 05/12/2006, 08h45

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