MySQL pour ajout d'une table on duplicate key
8 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
MySQL pour ajout d'une table on duplicate key
Bonjour, je voudrais insérer dans une table b le contenu entier d'une table a, mais si un enregistrement existe déjà, seulement mettre à jour l'enregistrement.
champ1unique : est une valuer qui doit être unique
champ2valeur : est une valeur à ajouter (ou updater si champ1unique existe déjà)
Insert Into table_b (champ1unique, champ2valeur) Select (champ1unique,champ2valuer) From table_a
visiblement dans le mode d'emploi MySQL le ON DUPLICATE KEY UPDATE n'existe pas lorsque on fait un Insert avec un Select.
Alors peut-être une requête sur la table_a
Select (champ1unique,champ2valeur) From table_a
while($val = mysql_fetch_array($req))
{
$x=$val['champ1unique'];
$y=$val['champ2valeur'];
INSERT INTO table_b (champ1unique, champ2valeur) VALUES ($x,$y) ON DUPLICATE KEY UPDATE champ2valeur=$y
}
est-ce que c'est comme ça qu'on fait ou est-ce qu'il y a une autre méthode?
champ1unique : est une valuer qui doit être unique
champ2valeur : est une valeur à ajouter (ou updater si champ1unique existe déjà)
Insert Into table_b (champ1unique, champ2valeur) Select (champ1unique,champ2valuer) From table_a
visiblement dans le mode d'emploi MySQL le ON DUPLICATE KEY UPDATE n'existe pas lorsque on fait un Insert avec un Select.
Alors peut-être une requête sur la table_a
Select (champ1unique,champ2valeur) From table_a
while($val = mysql_fetch_array($req))
{
$x=$val['champ1unique'];
$y=$val['champ2valeur'];
INSERT INTO table_b (champ1unique, champ2valeur) VALUES ($x,$y) ON DUPLICATE KEY UPDATE champ2valeur=$y
}
est-ce que c'est comme ça qu'on fait ou est-ce qu'il y a une autre méthode?
>> est-ce que c'est comme ça qu'on fait ou est-ce qu'il y a une autre méthode?
Ouiiii pour une autre méthode !
> utilise UNIQUE KEY et ton probleme sera vite résolu
Ouiiii pour une autre méthode !
> utilise UNIQUE KEY et ton probleme sera vite résolu
- Code: Tout sélectionner
CREATE TABLE login (
login_id int(20) NOT NULL auto_increment,
champ1unique varchar(30) NOT NULL default '',
PRIMARY KEY (login_id),
UNIQUE KEY champ1unique (champ1unique)
);
reprenons,
A quoi sert UNIQUE KEY ? A ne pas pouvoir inserer de doublons dans la table. Donc pour toi tu vas dans ta "table_b", et tu passe ton champ champ1unique en UNIQUE KEY champ1unique (champ1unique) (voir exemple + haut)
tu peux maintenant passer les datas de la "table_a" a la table "table_b" sans te preocupe d'enlever les doublons (les duplicate). Ca se fera tout seul puisqu'ils ne pourrons pas s'inserer.
A quoi sert UNIQUE KEY ? A ne pas pouvoir inserer de doublons dans la table. Donc pour toi tu vas dans ta "table_b", et tu passe ton champ champ1unique en UNIQUE KEY champ1unique (champ1unique) (voir exemple + haut)
tu peux maintenant passer les datas de la "table_a" a la table "table_b" sans te preocupe d'enlever les doublons (les duplicate). Ca se fera tout seul puisqu'ils ne pourrons pas s'inserer.
ok c'est cool...ça répond partiellement à mon problème!
mais le but c'était :
si l'enregistrement champunique n'existe pas on l'ajoute
mais si l'enregistrement champunique existe on ne l'ajoute pas MAIS on update champvaleur...
mais le but c'était :
si l'enregistrement champunique n'existe pas on l'ajoute
mais si l'enregistrement champunique existe on ne l'ajoute pas MAIS on update champvaleur...
8 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Sortie officielle de GoogleStats v2.0 !
- AdSense Tracking : statistiques détaillées sur les clics AdSense
- Sortie de GoogleStats v2.01
- GoogleStats : analyse temps réel des visites de Google sur votre site
- Les pays gérés par la Google Toolbar 2.0
- Yahoo Slurp et autres robots d'indexation de Yahoo
- Services et outils de Yahoo! Search
- Parts de marché des moteurs aux USA (Octobre 2006)
- Gestion des langues et des sessions en PHP / MySQL
- Les visiteurs de WRI apprécient Firefox
- Analyse de similarité textuelle
Cet outil vous permet de calculer la similarité entre 2 pages web. L'algorithme utilisé repose sur l'analyse des occurrences des mots (mais pas sur leur positionnement dans les pages). Google utilise cette notion à certains endroits dans son algorithme, mais de façon bien plus évoluée que ce petit outil... Avoir des pages trop similaires peut entraîner des problèmes d'indexation... Cet outil vous permettra peut-être de résoudre certains problèmes de contenus dupliqués.
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités






le forum