oracle 导出表结构的存储过程,ORACLE表结构与存储过程导出

ORACLE表结构导出:

SELECT DBMS_METADATA.GET_DDL('TABLE',u.table_name) FROM USER_ALL_TABLES u

存储过程导出

#! /usr/bin/ksh

. ~/.profile

beginTime=` date +%Y年%m月%d日%H时%M分%S秒 `

bindir=~/work/common

prodir=~/work/common/procedure

#连接数据库(带参数-S)

ORA_S()

{

~/cfg/dbetl_S

}

#连接数据库(不带参数)

ORA()

{

~/cfg/dbetl

}

#获得存储过程名称

getProcedureName()

{

ORA_S <${bindir}/procedure.lst

set heading off;

SET FEEDBACK OFF;

set pagesize 0 ;

set wrap off;

set echo off;

set term off;

set linesize 1000;

set trimspool on;

select object_name from user_procedures;

exit

!

}

#导出存储过程代码

exportProcedureSource()

{

ORA_S <${prodir}/${procedure_name}.sql

set serveroutput on;

set heading off;

SET FEEDBACK OFF;

set pagesize 0 ;

set wrap off;

set echo off;

set term off;

set linesize 1000;

set trimspool on;

select text from user_source a where a.name = '${procedure_name}' order by a.line;

exit

!

}

#####################        mian         ##########################

getProcedureName

mkdir prodir

while read procedure_name

do

exportProcedureSource

done

echo "begin at ${beginTime}"

echo "end   at ` date +%Y年%m月%d日%H时%M分%S秒 `"

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值