Rumah >pangkalan data >Oracle >Bagaimana untuk memadam skema dalam oracle
Dalam Oracle, anda boleh menggunakan pernyataan drop untuk memadamkan skema ialah koleksi objek pangkalan data dan juga boleh difahami sebagai pengguna.
Persekitaran pengendalian tutorial ini: sistem Windows 10, versi Oracle 11g, komputer Dell G3.
Sintaks untuk memadam skema adalah seperti berikut:
drop user username cascade;
Contohnya adalah seperti berikut :
1) Lihat ruang jadual lalai pengguna dan ruang meja sementara
set lines 300 col username for a30 select username ,default_tablespace,TEMPORARY_TABLESPACE from dba_users where username='MESPRD'; ----------------------------------- USERNAME DEFAULT_TABLESPACE TEMPORAR Y_TABLESPACE MESPRD HTTBS_MESPRD TEMP
2) Lihat kebenaran dan peranan pengguna
select privilege from dba_sys_privs where grantee='SYSADM' union select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='MESPRD' ); ----------------------------------- PRIVILEGE CREATE CLUSTER CREATE INDEXTYPE CREATE OPERATOR CREATE PROCEDURE CREATE SEQUENCE CREATE SESSION CREATE TABLE CREATE TRIGGER CREATE TYPE
9 baris telah dipilih.
3) Dapatkan skrip untuk memberikan kebenaran pengguna
select 'grant '||privilege||' to SYSADM;' from (select privilege from dba_sys_privs where grantee='SYSADM' union select privilege from dba_sys_privs where grantee in (select granted_role from dba_role_privs where grantee='SYSADM' ));
4) Jalankan skrip untuk mendapatkan skrip untuk memadam objek di bawah skema mesprd ialah skema yang akan dipadamkan
connect mesprd/MESPRD spool E:\app\Administrator\del_mesprd.sql; select 'alter table '||table_name||' drop constraint '||constraint_name||' ;' from user_constraints where constraint_type='R'; select 'truncate table '||table_name ||';' from user_tables; select 'drop table '||table_name ||' purge;' from user_tables; select 'drop index '||index_name ||';' from user_indexes; select 'drop view ' ||view_name||';' from user_views; select 'drop sequence ' ||sequence_name||';' from user_sequences; select 'drop function ' ||object_name||';' from user_objects where object_type='FUNCTION'; select 'drop procedure '||object_name||';' from user_objects where object_type='PROCEDURE'; select 'drop package '|| object_name||';' from user_objects where object_type='PACKAGE'; select 'drop database link '|| object_name||';' from user_objects where object_type='DATABASE LINK'; spool off;
5) SQLplus menyambung kepada skema dan melaksanakan skrip yang diperoleh di atas
Semak objek di bawah skema sebelum pelaksanaan dan semak objek di bawah skema sekali lagi selepas pelaksanaan
@?\E:\app\Administrator\del_mesprd.sql; SQL> select object_type,count(*) from user_objects group by object_type;
6) Matikan sesi yang disambungkan ke pangkalan data
select 'alter system kill session '''||sid||','||serial#||''' immediate;' from v$session where username='MESPRD';
7) Padamkan skema
drop user MESPRD cascade;
Tutorial yang disyorkan: "Tutorial Video Oracle"
Atas ialah kandungan terperinci Bagaimana untuk memadam skema dalam oracle. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!