begin process at 2010 03 17 22:33:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

SQL

 > 

MySQL

 > 

Requêtes

 > 

MySQL copier une table vers une autre table


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

MySQL copier une table vers une autre table

vendredi 29 septembre 2006 à 03:38:25 | MySQL copier une table vers une autre table

julien__

Je ne trouve aucun code source ni aide à ce sujet...

Je cherche à copier une sélection d'une table MySQL dans une autre table qui n'est pas vide avec du code PHP.

$query = "INSERT INTO table_dest SELECT * FROM table_src WHERE genre LIKE 'exemple'";

Avec cet ligne de code j'arrive à copier la sélection des enregistrement LIKE 'exemple' de la table_src vers la table_dest mais seulement si la table_dest est vide.

Lorsque la table_dest a déjà des enregistrements, cela créé une l'erreur suivante...

Duplicate entry '5' for key 1

Il n'y a aucune relation entre ces deux tables
Elles ont exactement la même structure (12 champs dont le premier est un index avec auto_incrément)

Bien sur dans les 2 tables il y a des enregistrement qui ont la même valeur d'index

Quelqu'un aurait une solution?

vendredi 29 septembre 2006 à 16:11:06 | Re : MySQL copier une table vers une autre table

Malkuth

Membre Club
Réponse acceptée !
et ben tu as dis la réponse toi même tu a des index identique dans les deux table donc quand tu rajoute un enrisgtrement avec un index déjà existant ca marche pô, c'est exactement ce qu'on peut attendre d'un index.
 
Trois solution selon ce que tu veux : 
   1- Virer transformer ton index de destination en simple champ numérique (BOF)
   2- ne pas faire un select * mais un select champ1,Champs2... avec tous les champs sauf l'index.(la il faut pas que tu veuille absoluement le même index que la table source
   9-Si tu tient a garder l'ID (Mais pas comme index tu fais la soluce 1 et tu rajoute un champ sur lequel tu met Index et autoingrément.


Voilou
dimanche 1 octobre 2006 à 00:30:57 | Re : MySQL copier une table vers une autre table

julien__

Réponse acceptée !

Oui je me doutais bien que c'était ça... ta solution 2 me praissait la meilleure en ce qui me concernait, voilà comment je l'ai mis en application...

$query = "INSERT INTO table_dest('champs2','champs3','champs4','etc..') SELECT champs2,champs3,champs4,etc.. FROM table_src WHERE genre LIKE 'exemple'";

comme ça le champs1 qui est l'index avec l'auto-incrément et la clé primaire n'entre pas dans l'opération.
avec cette requête, les enregistrement sélectionné dans la table_src sont mis à la suite des enregistrements de la table_dest avec une nouvelle valeur auto_incréement.

merci pour ton aide



Cette discussion est classée dans : table, code, mysql, copier, dest


Répondre à ce message

Sujets en rapport avec ce message

sql tri?!!! [ par abari ] salut tout le mondej'ai un probléme de tri?!!! dans ma table les enregistrement sont stockées d'une facon des ordonnées comme suit:code nom prénom probleme de connection odbc sur mysql [ par nuke_it ] Salut! bon j'ai deja posté un message sur csharp.fr et on ma conseillé de venir ici alors c ce ke je fais....:p Voila mon probleme j'effectue une con pb avec requete mysql [ par gregfly26 ] bonjourje suis etudiant en bts info indus et mon projet bts comporte une section sql !J'ai une base de données 'surface' qui contient 2 tables : 'fabr comment faire une replication de table entre 2 serveurs mysql? [ par fredericmaill ] j'ai 2 serveurs mysql et j'amerais faire une replication d'une table presente dans le serveurs A vers le serveru b, pour en temps reel les meme inform doublons avec distinct [ par deubal ] bonjour, voila j'ai une table contenant des fournisseurs avec un code unique, un libellé, un code postal, et une ville.je voudrais creer une requete q Copie d'une table [ par Jbensimoh ] salut je veux copier une table en sql(j'utilise MSSQL SERVER 2000) ce que je veux c'est de copier une table (données+Structure) en utilisant une requ mise a jour dans une base de donnée [ par goueg83460 ] bonjour je voudrais faire une requete UPDATE sachant qu'elle va enregistrer un code d'accés dans une table reservation. Sachant que pour trouver ce co Trigger [ par frop01 ] Salut,J'ai une table Categorie (Code_cat, Libelle) et une autre table sous_categorie (code_scat, code_cat, libelle)Je voudrais créer un déclencheur qu [mysql] Vider une table en fonction d'une date [ par sniktwo ] Bonjour tous le monde, je voudrais vider chaque table de ma base (a part client et serveur) en fonction d'une date récupéré dans un XML. Alors j'ai fa Help !!!! caracteres speciaux MySQL InnoDB utf8 [ par globule ] Bonjour, J'importe des données d'une table Access 2002 vers une table MySQL en VB6 avec ADO Je rencontre des problemes. MySQL n'arrive pas à impor


Nos sponsors


Appels d'offres

Sondage...

Comparez les prix

CalendriCode

Mars 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728
293031    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,014 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales