Oracle - DROP TABLE

Oracle - DROP TABLE - Divers - Programmation

Marsh Posté le 28-03-2019 à 00:25:04    

Bonjour,
 
je suis débutante sur Oracle (extrêmement débutante même). Je tente de faire un fichier texte supp.sql
qui permet de supprimer l'ensemble de mes tables. La première table se créer sans problème, mais la deuxième affiche le message d'erreur : Table ou vue inexistante.  
 
- Premier : DROP TABLE CLIENT cascade constraints; (Le DROP TABLE CLIENT EST EN BLEU et le reste en noir)
- Deuxième : DROP TABLE FOURNISSEUR cascade constraints; (Le DROP TABLE est en bleu et le mot
FOURNISSEUR, ainsi que le reste sont en noir)
 
Je n'arrive pas à mettre le mot FOURNISSEUR en bleu pour qu'il comprenne qu'il correspond à une table.
 

Reply

Marsh Posté le 28-03-2019 à 00:25:04   

Reply

Marsh Posté le 28-03-2019 à 11:35:49    

Oracle n'a pas l'option DROP TABLE IF EXISTS qui existe sur la plupart des autres bases de données.
Elle n'a pas non plus CREATE OR REPLACE TABLE.

 

Donc il y aura une erreur.

 

Il faut faire ce truc magique pour qu'il ne gueule pas:


        BEGIN
            EXECUTE IMMEDIATE ('DROP TABLE client CASCADE CONSTRAINTS');
            EXECUTE IMMEDIATE ('DROP TABLE fournisseur CASCADE CONSTRAINTS');
        EXCEPTION
              WHEN OTHERS THEN
                  IF SQLCODE != -942 THEN
                      RAISE;  -- raise only if the error isn't "No such table"
                  END IF;
        END;  


Message édité par el muchacho le 28-03-2019 à 11:38:11

---------------
Les aéroports où il fait bon attendre, voila un topic qu'il est bien
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed