IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

SQL Oracle Discussion :

Effacer toutes les tables


Sujet :

SQL Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Novembre 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 469
    Par défaut Effacer toutes les tables
    salut à tous,

    je viens de récupérer un dump à remonter sous mon schéma et j'aimerais supprimer tout le contenu (tables , triggers, vues, ...) de mon schéma avant d'effectuer mon dump

    Existe t-il une commande style delete toutes les tables de mon schéma


    Merci

  2. #2
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944
    Par défaut
    non, mais tu peux faire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    begin
      for f in (
        select object_type t, object_name n 
        from user_objects
        where object_type in 
          ('TABLE','VIEW','FUNCTION','PROCEDURE','TYPE','PACKAGE','SEQUENCE'))
      loop
        execute immediate 'drop '||f.t||' "'||f.n||'"'||
          case f.t when 'TABLE' then ' cascade constraints' end;
      end loop;
    end;
    /
    mais attention c'est très dangereux, si tu fais ça en tant que SYS, c'est grave.... fais un backup avant au cas où tu te plantes de schéma !

  3. #3
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    sinon, tu droppes le shema que tu recrées ensuite

  4. #4
    Membre éclairé
    Inscrit en
    Novembre 2004
    Messages
    469
    Détails du profil
    Informations forums :
    Inscription : Novembre 2004
    Messages : 469
    Par défaut
    ouais ok c'est ce que je fais d'habitude
    mais faudra que je recré les tables spaces

    merci en tout cas pour vos réponses

  5. #5
    Membre éclairé Avatar de LBO72
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    406
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 406
    Par défaut
    Bonjour à tous,

    laurentSchneider
    mais attention c'est très dangereux, si tu fais ça en tant que SYS, c'est grave.... fais un backup avant au cas où tu te plantes de schéma !
    Que veux-tu dire par un backup ?

    Merci.
    LBO72

  6. #6
    Expert confirmé
    Avatar de laurentschneider
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Décembre 2005
    Messages
    2 944
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Finance

    Informations forums :
    Inscription : Décembre 2005
    Messages : 2 944

  7. #7
    Membre éclairé Avatar de LBO72
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    406
    Détails du profil
    Informations personnelles :
    Âge : 56
    Localisation : France

    Informations forums :
    Inscription : Mai 2007
    Messages : 406
    Par défaut
    Laurent,

    J'ai voulu utiliser ton script pour supprimer tous les objets de mon schèma, mais je veux, pour ne pas faire de bétise, sortir en spool le résultat et exécuter le script en sortie après un petit contrôl... sauf que je n'arrive pas à faire de spool.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    SET SERVEROUTPUT off;
    set time on;
    set timing on;
    
    Declare
    toto varchar2(500);
    req  varchar2(500);
    begin
    	spool toto.lst;	
      for f in (
        select object_type t, object_name n 
        from dba_objects
    --    where object_type in ('TABLE','VIEW','FUNCTION','PROCEDURE','TYPE','PACKAGE','SEQUENCE')
        where object_type in ('TABLE')
            and owner = '&Nom_du_Schèma' )
      loop
      	req := 'drop '||f.t||' '||f.n||' '||  case f.t when 'TABLE' then ' cascade constraints' end;
    ---    execute immediate req;      
        dbms_output.put_line(req);
      end loop;
      spool off;
    end;
    /
    Merci.
    LBO72

  8. #8
    Expert éminent
    Avatar de orafrance
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    15 967
    Détails du profil
    Informations personnelles :
    Âge : 48
    Localisation : France

    Informations forums :
    Inscription : Janvier 2004
    Messages : 15 967
    Par défaut
    Citation Envoyé par lenoil Voir le message
    ouais ok c'est ce que je fais d'habitude
    mais faudra que je recré les tables spaces
    la suppression du schéma n'interfère en rien avec les tablespaces

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Effacer toutes les tables de la base
    Par biddal dans le forum Outils
    Réponses: 1
    Dernier message: 21/02/2008, 15h43
  2. Réponses: 16
    Dernier message: 07/08/2006, 13h11
  3. Réponses: 7
    Dernier message: 30/05/2006, 11h00
  4. effacer toutes les tables
    Par semaj_james dans le forum Oracle
    Réponses: 7
    Dernier message: 29/05/2006, 18h05
  5. Pb effacer toutes les tables d'une bd access
    Par madiam2004 dans le forum Bases de données
    Réponses: 5
    Dernier message: 30/05/2004, 15h24

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo