易截截图软件、单文件、免安装、纯绿色、仅160KB

ORACLE如何使用DBMS_METADATA.GET_DDL获取DDL语句

1.得到一个表的ddl语句:
SET SERVEROUTPUT ON
SET LINESIZE 1000
SET FEEDBACK OFF
set long 999999             ------显示不完整
SET PAGESIZE 1000    ----分页
 
EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false);  ---去除storage等多余参数
 
SELECT DBMS_METADATA.GET_DDL('TABLE','TCC_NE_FRAME') from DUAL;
SELECT DBMS_METADATA.GET_DDL('TABLE','TCC_NE_SNAP') from DUAL;
 
2.得到一个用户下的所有表,索引,存储过程的ddl
 
SET SERVEROUTPUT ON
SET LINESIZE 1000
SET FEEDBACK OFF
set long 999999  ------显示不完整
SET PAGESIZE 1000  ----分页
---去除storage等多余参数
EXECUTE DBMS_METADATA.SET_TRANSFORM_PARAM(DBMS_METADATA.SESSION_TRANSFORM,'STORAGE',false);
 
SELECT DBMS_METADATA.GET_DDL(U.OBJECT_TYPE, u.object_name)
  from USER_OBJECTS u
 where U.OBJECT_TYPE IN ('TABLE','INDEX','PROCEDURE');
 
3.得到所有表空间的ddl语句
 
SET SERVEROUTPUT ON
SET LINESIZE 1000
SET FEEDBACK OFF
set long 999999------显示不完整
SET PAGESIZE 1000----分页
---去除storage等多余参数
 
SELECT DBMS_METADATA.GET_DDL('TABLESPACE', TS.tablespace_name)
from DBA_TABLESPACES TS;
4.得到所有创建用户的ddl
 
SET SERVEROUTPUT ON
SET LINESIZE 1000
SET FEEDBACK OFF
set long 999999------显示不完整
SET PAGESIZE 1000----分页
---去除storage等多余参数
 
SELECT DBMS_METADATA.GET_DDL('USER',U.username)
from DBA_USERS U;


相关文档:

oracle 数据管理

 一:
使用Profile对用户Session会话进行资源限制
--但是如果使用了连接池之类的东东,就会出些问题,比如前台连接不上之类的
--http://www.eygle.com/archives/2008/10/profile_session_limit.html
sqlplus "/ as sysdba"
SQL> show parameter resource
SQL> alter system set resource_limit= ......

oracle审计详解

原帖: http://blog.chinaunix.net/u2/66903/showart_2082884.html
Oracle使用大量不同的审计方法来监控使用何种权限,以及访问哪些对象。审计不会防止使用这些权限,但可以提供有用的信息,用于揭示权限的滥用和误用。
下表中总结了Oracle数据库中不同类型的审计。
审 计 类 型
说    明
语句审计 ......

使用Oracle发送邮件

CREATE OR REPLACE PROCEDURE sendemailtest
(mailmsg IN Varchar2)
IS    
   --using mail server to send email.
   mailconn         UTL_SMTP.connection;
   mailhost       & ......

Oracle 数字函数用法

 1. round(Num,n) :  四舍五入数字Num,保留n位小数,不写N默认不要小数,四舍五入到整数个位
 select ROUND(21.237,2) from dual; 
 结果: 21.24
 2. trunc(Num,n) : 截取数字Num,保留n位小数,不写N默认是0,即不要小数
 select TRUNC(21.237,2) from dual;
 结果:21.2 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号