در صورتی که بخواهیم کاربری را به لحاظ دسترسی ها و کلمه عبور مشابه کاربر دیگر ایجاد کنیم، می توانیم از اسکریپتهای زیر استفاده کنیم.
توجه: در اسکریپتهای زیر فرض بر ان است که کاربر جدید، بر اساس مشخصات کاربر usef ساخته خواهد شد.
1.اسکریپت ایجاد کاربر به همراه پسورد و همچنین مشخصات ذخیره سازی:
select dbms_metadata.get_ddl(‘USER’, ‘USEF’) || ‘;’ create_script from dual;
2. یافتن همه roleهای تخصیص داده شده به کاربر usef:
SELECT DBMS_METADATA.GET_GRANTED_DDL(‘ROLE_GRANT’,’USEF’) FROM DUAL;
3.چه system privilageهایی به کاربر usef داده شده است؟
SELECT DBMS_METADATA.GET_GRANTED_DDL(‘SYSTEM_GRANT’, ‘USEF’) FROM DUAL;
4.چه object privilageهای به کاربر usef داده شده است؟
SELECT DBMS_METADATA.GET_GRANTED_DDL(‘OBJECT_GRANT’, ‘USEF’) FROM DUAL;
برای ایجاد کاربر جدید با این مشخصات، تنها کافیست نام کاربر جدید را با عبارت usef موجود در خروجی این دستورات، جایگزین کرد.
select dbms_metadata.get_ddl( ‘USER’, ‘USEF’ ) from dual
UNION ALL
select dbms_metadata.get_granted_ddl( ‘SYSTEM_GRANT’, ‘USEF’ ) from dual
UNION ALL
select dbms_metadata.get_granted_ddl( ‘OBJECT_GRANT’, ‘USEF’ ) from dual
UNION ALL
select dbms_metadata.get_granted_ddl( ‘ROLE_GRANT’, ‘USEF’ ) from dual;