بتاريخ: 4 نوفمبر 200421 سنة comment_17411 How to drop all tables and there corresponding objects???????????????????? تم تعديل 4 نوفمبر 200421 سنة بواسطة bedooracle تقديم بلاغ
بتاريخ: 29 ديسمبر 200421 سنة comment_22347 ألسلا م عليكماتوقع الطريقة انك تحذف اليوسر بشكل كليوالله اعلمDROP USER USER_NAME CASCADEتاكد وردلي خبر[email protected] تقديم بلاغ
بتاريخ: 3 يناير 200521 سنة comment_22829 اخي الكريم جرب هذا الكود طبعا ماخذه من موقع اجنبي اتمنى يفيدكThis script disables all constraints of a user.. /****************************************************************** ** Nom : disable_constraints.sql ** ** Auteur : PGL ** ** Date : 07/04/1998 ** ** Lancement : Sous le compte a desactiver... ** ** Description : Désactivation de toutes les contraintes actives ** ** d'un utilisateur avec sauvegarde du contexte ** dans la table CONSTRAINTS_DISABLED_TMP. ** *******************************************************************/ DECLARE -- Curseur des contraintes actives. -- CURSOR c_contraintes IS SELECT table_name, constraint_name FROM user_constraints WHERE constraint_type in ('P','R') AND status = 'ENABLED'; -- Curseur pour test de l'existance de la table temp. CURSOR cDrop IS Select table_name from user_tables where table_name='CONSTRAINTS_DISABLED_TMP'; Nom_Table user_constraints.table_name%TYPE; Nom_Const user_constraints.constraint_name%TYPE; Ignore INTEGER; cSQL INTEGER; cSQL1 INTEGER; NomTmp VARCHAR2(30); BEGIN --------- Suppression de la table temp si elle existe. ------------- OPEN cDrop; FETCH cDrop INTO NomTmp; IF cDrop%NOTFOUND THEN ------------- La table n'existe pas : pas d'action particulière... NomTmp := ''; ELSE ----------- La table existe, on la vire... cSQL1 := DBMS_SQL.OPEN_CURSOR; DBMS_SQL.PARSE(cSQL1, 'DROP TABLE '||NomTmp, DBMS_SQL.V7); Ignore := DBMS_SQL.EXECUTE(cSQL1); DBMS_SQL.CLOSE_CURSOR(cSQL1); END IF; ------------------------------------------------------------- CLOSE cDrop; ----------------------------------------------------------------------- -- On crée la table de sauvegarde du contexte des contraintes. -- qui contient toutes les contraintes déjà désactivées et qui n'ont -- pas à être réactivées après. Cela permet de retrouver le même schéma -- après la manip. ----------------------------------------------------------------------- cSQL1 := DBMS_SQL.OPEN_CURSOR; DBMS_SQL.PARSE(cSQL1, 'CREATE TABLE CONSTRAINTS_DISABLED_TMP AS SELECT constraint_name FROM user_constraints WHERE constraint_type in (''P'',''R'') AND status = ''DISABLED''', DBMS_SQL.V7); Ignore := DBMS_SQL.EXECUTE(cSQL1); DBMS_SQL.CLOSE_CURSOR(cSQL1); ------------------------------------------------------------------------ ---------------- Désactivation des contraintes actives ----------------- ------------------------------------------------------------------------ cSQL:= DBMS_SQL.OPEN_CURSOR; OPEN c_contraintes; LOOP FETCH c_contraintes INTO Nom_Table, Nom_Const; EXIT WHEN c_contraintes%NOTFOUND; DBMS_SQL.PARSE(cSQL, 'ALTER TABLE '||Nom_Table||' DISABLE CONSTRAINT '||Nom_Const||' CASCADE',DBMS_SQL.V7); Ignore := DBMS_SQL.EXECUTE(cSQL); END LOOP; CLOSE c_contraintes; DBMS_SQL.CLOSE_CURSOR(cSQL); END; / تقديم بلاغ
انضم إلى المناقشة
يمكنك المشاركة الآن والتسجيل لاحقاً. إذا كان لديك حساب, سجل دخولك الآن لتقوم بالمشاركة من خلال حسابك.