Précédent   Forum des professionnels en informatique > Bases de données > Autres SGBD
Autres SGBD Vos questions sur les autres SGBD
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 22/10/2006, 13h08   #1
Membre confirmé
 
Avatar de Fildz
 
Benoît Maréchal
Inscription : juin 2004
Messages : 161
Détails du profil
Informations personnelles :
Nom : Benoît Maréchal
Âge : 27

Informations forums :
Inscription : juin 2004
Messages : 161
Points : 240
Points : 240
Par défaut Vos conseils sur l'ajout de données

Bonjours a tous,

Mon programme lit régulierement le contenu d'un fichier, contenant des enregistrement correspondant a des informations sur des clients. Le fichiers grossi donc de plus en plus.

Chaque enregistrement est donc lu, puis inséré dans la base de données. Mais lorsqu'un enregistrement (portant sur une clés primaire) est deja présent, ça coince, la base ne veut pas l'insérer (logique).

Ma question est la suivante, doit-je ecrire un programme qui fait la comparaison de ce qu'il y a dans la base de données, avec ce qu'il y a dans le fichier avant d'effectuer les insertions, ou alors laisser la base de donnée
m'afficher ses erreurs pour les enregistrements déja présent, sans en tenir compte, puisque ce sont des enregistrements deja connu de la base, je n'ai de toute façon pas envie de les rajouter ?
__________________
Waluu.com.
Fildz est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2006, 08h22   #2
Expert Confirmé
 
Avatar de pc75
 
Inscription : septembre 2004
Messages : 2 807
Détails du profil
Informations personnelles :
Âge : 56
Localisation : France, Paris (Île de France)

Informations forums :
Inscription : septembre 2004
Messages : 2 807
Points : 3 005
Points : 3 005
Bonjour,

Tu développes avec quel langage ?
__________________
Par principe, je ne réponds pas aux messages URGENT.
Il n'y a pas de choses urgentes, il n'y a que des choses en retard. (un inconnu)
pc75 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2006, 16h25   #3
Membre expérimenté
 
Étudiant
Inscription : mars 2006
Messages : 396
Détails du profil
Informations personnelles :
Localisation : France, Nord (Nord Pas de Calais)

Informations professionnelles :
Activité : Étudiant

Informations forums :
Inscription : mars 2006
Messages : 396
Points : 500
Points : 500
Avec MySQL, par exemple, on peut faire une requête du type :
IGNORE permet de ne pas avoir d'erreurs lorsque l'on tente d'insérer un enregistrement déjà présent dans la base de données.
IGNORE est surtout utilisé avec les requêtes INSERT ... SELECT.
En effet, lors de l'insertion de beaucoup d'enregistrement, une requête INSERT ... SELECT s'arrête à la moindre erreur.
IGNORE permet de continuer l'exécution de la requête malgré d'éventuelles erreurs ( comme un enregistrement déjà présent).
jeremya est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/10/2006, 16h33   #4
Xo
Expert Confirmé
 
Avatar de Xo
 
Inscription : janvier 2005
Messages : 2 701
Détails du profil
Informations personnelles :
Âge : 38

Informations forums :
Inscription : janvier 2005
Messages : 2 701
Points : 3 237
Points : 3 237
Envoyer un message via Skype™ à Xo
Citation:
Envoyé par Fildz
Ma question est la suivante, doit-je ecrire un programme qui fait la comparaison de ce qu'il y a dans la base de données, avec ce qu'il y a dans le fichier avant d'effectuer les insertions, ou alors laisser la base de donnée
m'afficher ses erreurs pour les enregistrements déja présent, sans en tenir compte, puisque ce sont des enregistrements deja connu de la base, je n'ai de toute façon pas envie de les rajouter ?
En général, il est plus "propre" de tester la présence d'un enregistrement avant de tenter une insertion. Si le ou les champs qui te servent de critère d'unicité sont correctement indexés, cela ne devrait pas poser de problèmes niveau performances.

Tu ne gères pas de mise à jour de tes enregistrements ?
__________________
"Ce que l'on conçoit bien s'énonce clairement,
Et les mots pour le dire arrivent aisément." Nicolas Boileau

"Expliquer empêche de comprendre si cela dispense de chercher"

Quiz Oracle : venez tester vos connaissances !

La FAQ Oracle : 138 réponses à vos questions
Aidez-nous à la compléter
Xo est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 24/10/2006, 09h13   #5
Membre confirmé
 
Avatar de Fildz
 
Benoît Maréchal
Inscription : juin 2004
Messages : 161
Détails du profil
Informations personnelles :
Nom : Benoît Maréchal
Âge : 27

Informations forums :
Inscription : juin 2004
Messages : 161
Points : 240
Points : 240
a tous pour vos réponses.

Dans un premier temps je ne pensais pas gerer de mise a jours, mais il s'avere que j'en aurai besoin. Je pense donc que je n'ai pas le choix, il va falloire que je compare ce que j'ai dans la base avec ce qu'il y a dans le fichier.
__________________
Waluu.com.
Fildz est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 06h33.


 
 
 
 
Partenaires

Hébergement Web