!
!
!
!
!
!
!
!

Modification de paramètres d'une table *

  • THEORIE *

    SCRIPTS *

    Sauvegarde de la table *

    Créer le script de création de la table *

    Rendre inactives les contraintes concernant la table *

    Détruire la table *

    Recréer la définition de la table avec des paramètres améliores *

    Remplir la table avec les données initiales *

    Rendre actives les contraintes de la table. *

    Copyrights *

  • Modification de paramètres d'une table

    THEORIE

     

    C'est fou comme une base peut être mal menée durant le processus de développement. Des contraintes ad-hoc, des nouveaux index ou foreign keys peuvent rendre les scripts initiaux de création obsolètes et inutilisables.

     

    On veut modifier les paramètres de stockage d'une table, peut-être a cause d'une allocation insuffisante (éparpillement dans le TABLESPACE), de piètres performances, etc.

     

    Actions envisagées:

    1. Sauvegarde de la table
    2. Créer le script de création de la table
    3. Rendre inactives les contraintes concernant la table
    4. Détruire la table
    5. Recréer la définition de la table avec des paramètres améliores
    6. Remplir la table avec les données initiales
    7. Rendre actives les contraintes de la table.

     

    Une bonne action a est de garder DES LA création de la base les scripts initiaux de création de TABLESPACES, de tables, etc, mais si le rattrapage est impossible ou difficile, sachons que TOUT est accessible dans les tables système ORACLE.

     

    1. Sauvegarde de la table.
  • Cette sauvegarde peut être effectuée en fonction de l'espace disponible. Deux possibilités sont envisageables:
    1. Création d'une autre table et copie des données
    2. EXPORT de la table

     

    1. Créer le script de création de la table
    2. Rien de plus simple.
    3. Rendre inactives les contraintes concernant la table
  • Ceci nécessite la création de deux scripts et l'inactivation des contraintes:
    1. Script d'inactivation des contraintes
    2. Script d'activation des contraintes
    3. Inactivation des contraintes (avec le script 3.1)

     

    1. Détruire la table.
    2. Rien de plus simple.
    3. Recréer la définition de la table avec des paramètres améliorés
    4. Ceci suppose un peu d'édition des paramètres
    5. Remplir la table avec les données initiales
  • En fonction du point 1), cette repopulation se fait par
    1. La copie des données a partir de la table du 1.1
    2. L'import des données a partir de l'EXPORT 1.2

     

    1. Rendre actives les contraintes de la table.
  • Utiliser le script 3.2.
  • SCRIPTS

    Vérifiez vos agissements. Il s'agit d'une table qui sera détruite et recréée ensuite.

    Lisez les scripts intermédiaires ;-)

    Sauvegarde de la table

    Création d'une autre table et copie des données (1.1)

    Create table COPY_TABLE as select * from TABLE_INITIALE

    Créer le script de création de la table

  • sql\autogen.sql
  • Rendre inactives les contraintes concernant la table

  • sql\cons_dis.sql pour créer le script, puis exécuter sous SQL (plusieurs fois ?)

    @dis_cons.sql, créé par celui-ci

  • Détruire la table

  • Drop table TABLE_INITIALE
  • Recréer la définition de la table avec des paramètres améliores

  • @tabgen.sql, après édition de TABGEN.SQL

    (modification TABLESPACE, taille des extents, etc)

  • Remplir la table avec les données initiales

    INSERT INTO TABLE_INITIALE select * from COPY_TABLE order by ...;

    Ou bien IMPORT ...

    Rendre actives les contraintes de la table.

  • sql\cons_en.sql et puis exécuter sous SQL (plusieurs fois ?)

    @en_cons.sql, créé par celui-ci

  • Copyrights

     

    Ce document est une compilation. Les sources correspondantes appartiennent a leurs auteurs respectifs.

    • Osborne McGraw-Hill
    • Etc

    Je revendique uniquement l'organisation du document. Radu Caulea, 1997.

     


    Copyright © 1998-2002 Radu Caulea, TAFORA MAJ 20/04/2006 !
    Commentaires et suggestions radu[CHEZ]tafora.fr