Précédent   Forum des professionnels en informatique > Bases de données > Firebird > SQL
SQL Forum d'entraide sur le SQL pour Firebird
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 13/06/2011, 21h55   #1
Inscrit
 
Inscription : mai 2004
Messages : 758
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 758
Points : 287
Points : 287
Par défaut Problème de gestion de données

Bonjour a tous

Nous avons une base de données migré depuis lors sous FB 2.5 de près de 70 000 lignes.
ll se trouve ke nous avons des doublons (en effet dans la base on les champs nom prenoms et date de naissance) et il faut supprimers les doublons pour ces champs, car la politique de gestion a changer:
ce que nous voudrions faire c'est de creer deux nouvelles tables une pour les bonne données et une autres pour les doublons.
1/ Donc comment mettre une procedure qui va remplir les deux tables.
2/ Existe t'il une autre methode
Merci a tous
devalender est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/06/2011, 22h24   #2
Inscrit
 
Inscription : mai 2004
Messages : 758
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 758
Points : 287
Points : 287
Voici mon code qui ne marche pas
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
SET TERM ^ ;
CREATE PROCEDURE MAPROCEDURE ()
    AS
BEGIN
 
INSERT INTO TABLEN VALUES(SELECT TNOM, TPRENOM, TDATE FROM TABLEG);
WHEN SQLCODE 23000 DO
INSERT INTO TABLED VALUES(SELECT TNOM, TPRENOM, TDATE FROM TABLEG);
	END
	SUSPEND;
END^
SET TERM ; ^
TABLEG table générale
TABLEN table des données propres
TABLED table des doublons
devalender est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2011, 00h51   #3
Membre éclairé
 
Avatar de TryExceptEnd
 
Homme
Développeur informatique
Inscription : octobre 2006
Messages : 435
Détails du profil
Informations personnelles :
Sexe : Homme

Informations professionnelles :
Activité : Développeur informatique
Secteur : High Tech - Éditeur de logiciels

Informations forums :
Inscription : octobre 2006
Messages : 435
Points : 347
Points : 347
Citation:
Envoyé par devalender Voir le message
2/ Existe t'il une autre methode
Oui, supprimer les doublons dans la table initiale tout simplement.
__________________
Si vous êtes libre, choisissez le Logiciel Libre.
TryExceptEnd est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 14/06/2011, 19h21   #4
Inscrit
 
Inscription : mai 2004
Messages : 758
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 758
Points : 287
Points : 287
ok je vois mais j'ai deux soucis :

1/ comment supprimer les doublons de la table de depart compte tenu de la taille des données
2/ je voudrais aussi bien garder les doublons pour juster et faire certains rapports

Merci !
devalender est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2011, 08h55   #5
Membre émérite
 
Homme Olivier Dehorter
Ingenieur de recherche - Ecologue
Inscription : juin 2003
Messages : 697
Détails du profil
Informations personnelles :
Nom : Homme Olivier Dehorter
Localisation : France

Informations professionnelles :
Activité : Ingenieur de recherche - Ecologue

Informations forums :
Inscription : juin 2003
Messages : 697
Points : 837
Points : 837
Citation:
Envoyé par devalender Voir le message
ok je vois mais j'ai deux soucis :

1/ comment supprimer les doublons de la table de depart compte tenu de la taille des données
2/ je voudrais aussi bien garder les doublons pour juster et faire certains rapports

Merci !
1 - Aucun problème : 70 000 lignes ce n'est absolument rien...
il suffit de créer la requête adhoc (voir le message de TryExceptEnd)
2 - Avoir le beurre et l'argent du beurre. Mais faut il vraiment avoir ces 2 types d'informations pour des rapports qu'une requête ne pourrait construire ???
si oui : je vois 2 solutions :
a : avoir 2 tables ......
b : ajouter une colonne (boolean) indiquant la donnee en double...

mais est ce vraiment pertinent ?
dehorter olivier est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2011, 13h48   #6
Inscrit
 
Inscription : mai 2004
Messages : 758
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 758
Points : 287
Points : 287
j'avoue ne pas avoir vu le lien dans le message de TryExceptEnd je vais donc m'y mettre et apporter mes conclusions plus tard !
d'avance
devalender est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 15/06/2011, 17h27   #7
Inscrit
 
Inscription : mai 2004
Messages : 758
Détails du profil
Informations forums :
Inscription : mai 2004
Messages : 758
Points : 287
Points : 287
Exactement ce qu'il me fallait !
Merçi a tous
devalender est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 01h04.


 
 
 
 
Partenaires

Hébergement Web