|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : juin 2007 Messages : 34 ![]() |
Bonjour,
On essaye d'importer dans une base de données, le contenu d'un fichier .csv , comment faire pour éviter d'importer des entrées similaires ? sachant que le fichier csv contient un unique numéro qu'on peut utiliser. Merci |
|
|
00
|
|
|
#2 | |
![]() ![]() |
Comme je l'ai dit dans cette autre réponse que je t'ai faite hier soir :
Citation:
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
|
00
|
|
|
#3 |
|
Invité régulier
![]() Inscription : juin 2007 Messages : 34 ![]() |
tu as tout à fait raison CinePhil, en attendant l'article , est ce que c'est possible de m'aider ? |
|
|
00
|
|
|
#4 |
![]() ![]() |
Si tu expliques mieux ton besoin, oui.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#5 | |
|
Invité régulier
![]() Inscription : juin 2007 Messages : 34 ![]() |
l'ajout du contenu d'un fichier csv à la base de donnée , sans avoir de double , parcequ'on compte utiliser cronjob pour effectuer automatiquement l'opération.
exemple du csv: Citation:
Merci |
|
|
|
00
|
|
|
#6 | |
![]() ![]() |
Tu veux ajouter des données dans une table existante en évitant de ré-insérer les lignes dont le code existe déjà dans la table ?
Doc MySQL : Citation:
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : juin 2007 Messages : 34 ![]() |
oui c'est cela.
|
|
|
00
|
|
|
#8 | ||
![]() ![]() |
Comme j'ai édité mon précédent message pendant ta réponse, regarde ce que j'ai ajouté, cela te suffira peut-être.
Sinon, comme je le préconise, importe le fichier csv dans une nouvelle table temporaire puis importe les données utiles dans la vraie table. Code :
Ça fait longtemps que je n'ai plus fait ça alors je ne me souviens plus de la méthode exacte mais c'est l'idée. Je peaufinerai ça quand j'écrirai mon article.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
||
|
00
|
|
|
#9 |
|
Membre Expert
![]() Inscription : mars 2005 Messages : 1 565 ![]() |
Pourquoi ne pas simplement mettre une contrainte d'unicité sur le code en question et déverser les données dans la table ? Les lignes violant la contrainte d'unicité ne seront pas ajoutées.
(Trop) simple mais ça devrait répondre au besoin. |
|
|
00
|
|
|
#10 |
![]() ![]() |
Oui, c'est ce que je suggérais avec l'encadré issu de la doc MySQL.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#11 | ||
|
Invité régulier
![]() Inscription : juin 2007 Messages : 34 ![]() |
oui mais comment réaliser la contrainte d'unicité sur le code ?
j'utilise ce fichier pour ajouter le contenu csv à la base de donnée. Code :
|
||
|
|
00
|
|
|
#12 |
![]() ![]() |
Je croyais que tu utilisais simplement LOAD DATA INFILE pour importer le fichier csv !
La contrainte d'unicité se pose sur la table dans MySQL par l'ajout d'un index de type UNIQUE, à moins que celui n'existe déjà.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#13 | ||
|
Invité régulier
![]() Inscription : juin 2007 Messages : 34 ![]() |
j'ai essayé de recréer la table en ajoutant
UNIQUE code Code :
|
||
|
|
00
|
|
|
#14 |
![]() ![]() |
Et comme j'ai une boule de cristal sur mon bureau, je vois tout de suite quels symptômes font que "ça marche pas" !
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique. Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework... « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau) À la maison comme au bureau, j'utilise Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française ! Linuxiens, comptez-vous ! |
|
00
|
|
|
#15 |
|
Invité régulier
![]() Inscription : juin 2007 Messages : 34 ![]() |
aucune idée
je crois que je vais essayer distinct dans select. |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com