Précédent   Forum des professionnels en informatique > Bases de données > Décisions SGBD
Décisions SGBD Forum de décisions sur le choix en bases de données. Le Comparatif
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 05/06/2004, 10h56   #1
Invité de passage
 
Inscription : juin 2004
Messages : 1
Détails du profil
Informations forums :
Inscription : juin 2004
Messages : 1
Points : 0
Points : 0
Par défaut Diviser une banque de données

Bonjour,

voici une description de mon problème:

J´ai crée une banque de donnée relationnelle comportant plusieurs tables.
Je voudrais pouvoir transférer certains records de ma table principale avec un critère (par exemple tous les records < 2002) dans une autre table. Comme cela la recherche lors de requêtes sera plus vite, car je recherche que dans les records crée > 2002.
Est-ce une bonne idée?

Mais en cas de besoin je voudrais quand même pouvoir faire une recherche dans mes records anciens.

Ce que je veux donc faire est de pouvoir archiver les anciennes données mais pouvoir également accéder au cas de besoin aux anciennes données des années précédentes.

Est-ce que quelqu’un peut me donner un conseil de design ?

Je vous remercie d´avance !

Marcel

P.S. L´application n´est pas encore en production et j´utilise ACCESS.
marcelix est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 06/06/2004, 08h49   #2
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

Informations professionnelles :
Activité : Administrateur de base de données
Secteur : Service public

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
Oui, c'est une bonne idee (surtout lorsqu'on utilise des moteurs aussi peu performants ). Dans un premier temps, pensez quand même à compacter votre base pour voir si cela arrange les choses, et a creer simplement un index sur le champ date

Sinon, pour votre dénormaliation, soit votre table T1
1) Renommer T1 en T1_courant
2) Copier T1_courant dans une nouvelle T1_histo (structure & donnees)
3) Creer une vue T1 as select * from T1_courant union select * from T1_histo
4) delete T1_courant where year(VotreDate)<2004
5) delete T1_histo where year(VotreDate)>=2004
fadace 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 10h02.


 
 
 
 
Partenaires

Hébergement Web