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 03/03/2006, 09h02   #1
Invité de passage
 
Inscription : janvier 2006
Messages : 4
Détails du profil
Informations forums :
Inscription : janvier 2006
Messages : 4
Points : 1
Points : 1
Par défaut [FB1.5] Activer/desactiver index

Bonjour,

Je souhaiterais recalculer les indexs de ma base de donnée dans une procédure stockée ou un script.

J'arrive à recupérer les indexs de ma base avec
Code :
1
2
3
4
5
6
 
    SELECT rdb$indices.rdb$index_name
    FROM rdb$indices
    WHERE rdb$indices.rdb$index_id IS NOT NULL
    AND rdb$indices.rdb$index_type = 0
    ORDER BY rdb$indices.rdb$index_name
mais apres je n'ai aucune idée de la façon de faire pour les recalculé.
J'ai fait une procédure de ce genre mais elle ne compile pas sous ibexpert.

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
 
CREATE PROCEDURE REORGANISATION 
AS
DECLARE VARIABLE NOM_INDEX CHAR(31);
begin
  /* Procedure Text */
  FOR
    SELECT rdb$indices.rdb$index_name
    FROM rdb$indices
    WHERE rdb$indices.rdb$index_id IS NOT NULL
    AND rdb$indices.rdb$index_type = 0
    ORDER BY rdb$indices.rdb$index_name
   INTO
     :nom_index
  do
  begin
    ALTER INDEX :nom_index inactive;
    ALTER INDEX :nom_index active;
  end
end
Si quelqu'un à une idée ou une piste , elle serait la bienvenue.
Merci
xavier ringoise est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 13/03/2006, 16h46   #2
Futur Membre du Club
 
Inscription : octobre 2005
Messages : 16
Détails du profil
Informations forums :
Inscription : octobre 2005
Messages : 16
Points : 18
Points : 18
un des moyens efficaces de recalculer les index est de faire un backup/restore total de ta base, ca remet tout d'equerre.

Sinon, il me semble que tu peux les désactiver et les réactiver et ça les recalcule (sauf les index de clé primaire car système)
michel_ballasse 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 16h51.


 
 
 
 
Partenaires

Hébergement Web