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

 MySQL Discussion :

copie de table via phpmyadmin


Sujet :

MySQL

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 100
    Points : 65
    Points
    65
    Par défaut copie de table via phpmyadmin
    bon jour à tous

    J'ai un petit soucis de duplication de table avec phpMyAdmin : je voudrais savoir si ma procédure est correcte où bien si pb chez mon hébergeur OVH qui soit dit en passant me laisse sans nouvelle depuis 48 heures !

    Je sélectionne ma table, puis opération, puis je choisis "copier table vers" avec ici le nouveau nom de table, sélection de structure et données.

    Après "exécuter", page blanche, aucun message, je suis obligé de recliquer sur une table dans la bandeau à gauche pour reprendre la main : sortie de procédure, pas de copie effectuée !

    Comment faire pour dupliquer une table via phpMyAdmin ?

    bonne continuation
    pascal

  2. #2
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Saluton,
    Comment crois-tu que procède PMA ?
    Depuis MySQL 3.23, vous pouvez créer une table à partir d'une autre, en ajoutant une commande SELECT après la commande CREATE TABLE :

    CREATE TABLE new_tbl SELECT * FROM orig_tbl;

    MySQL va créer une nouvelle colonne pour chaque colonne de résultat de la commande SELECT. Par exemple :

    mysql> CREATE TABLE test (a INT NOT NULL AUTO_INCREMENT,
    -> PRIMARY KEY (a), KEY(b))
    -> TYPE=MyISAM SELECT b,c FROM test2;

    Cela créer une table MyISAM avec trois colonnes a, b, et c. Notez que les colonnes de la commande SELECT sont ajoutées à droite de la table, et non dans la liste des colonnes. Par exemple :

    mysql> SELECT * FROM foo;
    +---+
    | n |
    +---+
    | 1 |
    +---+

    mysql> CREATE TABLE bar (m INT) SELECT n FROM foo;
    Query OK, 1 row affected (0.02 sec)
    Records: 1 Duplicates: 0 Warnings: 0

    mysql> SELECT * FROM bar;
    +------+---+
    | m | n |
    +------+---+
    | NULL | 1 |
    +------+---+
    1 row in set (0.00 sec)

    Pour chaque ligne de la table foo, une ligne est insérée dans la colonne bar avec la valeur issue de foo et la valeur par défaut pour les nouvelles colonnes.

    Si une erreur survient durant la copie de la table, la table est automatiquement effacée.

    CREATE TABLE ... SELECT ne va pas créer automatiquement les index pour vous. Ceci est fait intentionnellement pour rendre la commande aussi souple que possible. Si vous voulez avoir les mêmes index, vous devez les spécifier dans la commande avant le SELECT :

    mysql> CREATE TABLE bar (UNIQUE (n)) SELECT n FROM foo;

    Certaines conversions de type pourraient avoir lieu. Par exemple, l'attribut AUTO_INCREMENT n'est pas préservé, et les colonnes VARCHAR peuvent devenir des colonnes CHAR.

    Lors de la création de la table avec CREATE ... SELECT, assurez vous de mettre un nom d'alias à toutes les fonctions ou expression de la requête. Si vous ne le faîtes pas, la commande CREATE peut échouer ou donner des noms de colonnes inattendus.

    CREATE TABLE artists_and_works
    SELECT artist.name, COUNT(work.artist_id) AS number_of_works
    FROM artist LEFT JOIN work ON artist.id = work.artist_id
    GROUP BY artist.id;

    Depuis MySQL 4.1, vous pouvez spécifier explicitement le type de colonne généré :

    CREATE TABLE foo (a TINYINT NOT NULL) SELECT b+1 AS a FROM bar;

    En MySQL 4.1, vous pouvez aussi utiliser la clause LIKE pour créer une table basée sur la définition d'une autre table, y compris les attributs de colonnes et les index originaux :

    CREATE TABLE new_tbl LIKE orig_tbl;

    CREATE TABLE ... LIKE ne copie pas les options de tables DATA DIRECTORY et INDEX DIRECTORY qui étaient spécifiées dans la table originale.

    Vous pouvez faire précéder SELECT par IGNORE ou REPLACE pour indiquer comment gérer les clés doublons. Avec IGNORE, les nouvelles lignes qui sont en double seront ignorés. Avec REPLACE, les nouvelles lignes remplaceront les lignes précédentes, qui avaient la même valeur d'index. Si ni IGNORE, ni REPLACE ne sont spécifié, les doublons génèreront une erreur.

    Pour s'assurer que le log binaire peut être réutilisé pour recréer la table originale, MySQL ne permettra pas les insertions concurrentes durant une commande CREATE TABLE ... SELECT.
    En fait, tout es là http://dev.mysql.com/doc/refman/5.0/...ate-table.html
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 100
    Points : 65
    Points
    65
    Par défaut
    bien compris tes indications, par contre comment cela peut m'aiguiller pour solutionner le soucis de copie de table par PMA ?

    pour info je suis sur mysql5

  4. #4
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Citation Envoyé par grassel Voir le message
    comment cela peut m'aiguiller pour solutionner le souci de copie de table par PMA ?
    En te passant de PMA puisque, apparemment, ton hébergeur l'a bridé.
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

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

    Informations forums :
    Inscription : Juillet 2007
    Messages : 100
    Points : 65
    Points
    65
    Par défaut
    si je comprends bien, OVH semble brider PMA et son option "copier table".

    Pour info leur service technique vient de me répondre en me donnant le lien de leur guide concernant ...le Bakup de base ! sans aucune autre commentaire : tient rogne ceci IGNORANT que tu es ! pourtant ma demande est claire et documentée........

    Bien sûr en ecrivant directement la requête CREATE...LIKE, c'est OK pour la structure.

    Suis preneur pour tout conseil

    merci en attendant
    pascal

  6. #6
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Citation Envoyé par grassel Voir le message
    Bien sûr en ecrivant directement la requête CREATE...LIKE, c'est OK pour la structure.
    Eh bien après tu fais une requête INSERT INTO la_structure_copiée SELECT la_table_source
    Kie lumo eksistas ankaŭ ombro troviĝas. L.L. Zamenhof
    articles : Comment émuler un tableau croisé [quasi] dynamique
    et : Une énigme mathématique résolue avec MySQL
    recommande l'utilisation de PDO (PHP5 Data Objects)

  7. #7
    ced
    ced est déconnecté
    Rédacteur/Modérateur

    Avatar de ced
    Homme Profil pro
    Gestion de bases de données techniques
    Inscrit en
    Avril 2002
    Messages
    6 018
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Loiret (Centre)

    Informations professionnelles :
    Activité : Gestion de bases de données techniques
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Avril 2002
    Messages : 6 018
    Points : 23 710
    Points
    23 710
    Par défaut
    Citation Envoyé par Maljuna Kris Voir le message
    Eh bien après tu fais une requête INSERT INTO la_structure_copiée SELECT la_table_source
    Quelques infos supplémentaires dans la FAQ sur ce sujet.
    Si ça peut t'aider .

    ced
    Rédacteur / Modérateur SGBD et R
    Mes tutoriels et la FAQ MySQL

    ----------------------------------------------------
    Pensez aux balises code et au tag
    Une réponse vous a plu ? N'hésitez pas à y mettre un
    Je ne réponds pas aux questions techniques par message privé, les forums sont là pour ça

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

Discussions similaires

  1. Sauvegarde de tables mysql via phpmyadmin
    Par balih44 dans le forum Administration
    Réponses: 3
    Dernier message: 21/10/2011, 15h25
  2. [MySQL] Exporter table vers csv via PhpMyAdmin
    Par mikael2235 dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 09/06/2010, 20h47
  3. [MySQL] Fusionner deux tables (structures différentes) via phpMyAdmin
    Par Fabien#21 dans le forum PHP & Base de données
    Réponses: 4
    Dernier message: 13/02/2008, 01h25
  4. copie de table
    Par flavabre dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 03/03/2004, 16h38
  5. Dédoublonnage pdt copie une table a une autre
    Par Krevette dans le forum Requêtes
    Réponses: 3
    Dernier message: 15/10/2003, 14h26

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