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

Oracle Discussion :

Supprimer une selection de tables


Sujet :

Oracle

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de magic charly
    Inscrit en
    Février 2006
    Messages
    167
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 167
    Par défaut Supprimer une selection de tables
    Bonjour,

    j'essaie de faire une requête en PL/SQL permettant de supprimer une selection de tables.

    Que pensez-vous de cette requête?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    DROP TABLE IN (select * from dba_all_tables
    	where tablespace_name like '%tartempion%' 
     
    );

    merci d'avance,

    Magic Charly

    PS: je suis en Oracle 8I

  2. #2
    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
    recherche EXECUTE IMMEDIATE

  3. #3
    Membre Expert
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Par défaut
    La table ne peux pas être passée en variable BIND (directement dans le code PL/SQL). D'autre part l'instruction DROP n'était pas du SQL (mais du DDL), ça n'est pas directement compilable en PL/SQL (ça fait 2 raisons de ne pas fonctionner... ). Comme le dit fred, il faut faire en 2 temps:
    1- Générer les scripts de DROP
    2- Executer ces scripts à l'aide de EXECUTE IMMEDIATE

  4. #4
    Membre Expert

    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Janvier 2004
    Messages
    2 862
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Conseil

    Informations forums :
    Inscription : Janvier 2004
    Messages : 2 862
    Par défaut
    Autre solution :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    set head off
    set feed off
    spool drop_table.sql
    select 'drop ' || table_name || ';'
    from all_tables
    where tablespace_name like '%xxx%';
    spool off
    @drop_table

  5. #5
    Membre confirmé Avatar de magic charly
    Inscrit en
    Février 2006
    Messages
    167
    Détails du profil
    Informations forums :
    Inscription : Février 2006
    Messages : 167
    Par défaut
    merci.
    Si j'ai bien compris cela me donnera quelquechose comme ça non?



    mon_shell
    .
    .
    .
    sqlplus / @blabla.sql
    exit
    .
    .
    .

    blabla.sql
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    set head off
    set feed off
    spool drop_table.sql
    select 'drop ' || table_name || ';'
    from all_tables
    where tablespace_name like '%xxx%';
    spool off
    @drop_table.sql

  6. #6
    Membre Expert
    Inscrit en
    Avril 2006
    Messages
    1 024
    Détails du profil
    Informations forums :
    Inscription : Avril 2006
    Messages : 1 024
    Par défaut
    oui.... cependant il serait peut etre prudent de ne pas exécuter automatiquement le @drop_table.sql mais de le vérifier avant

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 18/01/2016, 16h21
  2. supprimer une selection
    Par justine91 dans le forum VBA Access
    Réponses: 6
    Dernier message: 27/02/2014, 15h25
  3. [WD17] Imprimer qu'une selection de table
    Par alex1005 dans le forum WinDev
    Réponses: 5
    Dernier message: 23/01/2013, 12h55
  4. Supprimer une liste de tables
    Par dari68 dans le forum SQL
    Réponses: 5
    Dernier message: 21/07/2011, 11h34
  5. ajouter supprimer une ligne dans table
    Par mans27 dans le forum JSF
    Réponses: 1
    Dernier message: 28/05/2007, 13h56

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