當前位置:首頁 » 存儲配置 » 導出所有存儲過程

導出所有存儲過程

發布時間: 2022-03-30 10:23:05

A. oracle怎麼導出function和procere,即函數和存儲過程

使用oracle的一般都裝了PL/sql吧,對象窗口,找到對應的函數或者存儲過程,右鍵查看或編輯。

一般單個我是這么用,如果很多的話可以參考一下網上提供的方法:

oracle 導出一個用戶下的所有存儲過程
方法一:
set echo off ;
set heading off ;
set feedback off ;
spool d:\tmp.txt
select text from user_source ;
spool off;
方法二:
使用PL/SQL 菜單 Tools --> Export user objects... ,對彈出的dialog中選擇user和output file,選中要導出的內容,點擊export導出就行了

B. 如何備份SQL存儲過程批量導出資料庫存儲過程

打開SQL Server Management Studio查詢分析器,找到需要批量導出SQL存儲過程資料庫。右鍵菜單-任務-生成腳本

進入的生成SQL Server腳本向導。點擊下一步。

選中要導出所有SQL存儲過程的資料庫。繼續下一步。

腳本選項,不用做修改,默認即可。

在選擇對象類型中,選擇存儲過程。

這樣可以看到這個資料庫中所有的SQL存儲過程,可以批量選擇SQL存儲過程,也可以全選所有的SQL存儲過程進行導出。

在腳本模式中,腳本保存到文件,選擇需要導出保存到電腦上的文件夾路徑。單個文件即所有SQL存儲過程都放在一個SQL文件中,不是每個SQL存儲過程獨立一個SQL文件。所以可以選擇每個對象一個文件。

設置向導完成,等待導出完成即可。

C. oracle資料庫可否批量導出存儲過程

Oracle批量導出存儲過程
法一:
PL/SQL工具導出
法二:
Sql代碼
SET echo off;
SET heading off;
SET feedback off;
spool C:\Documents and Settings\Administrator\桌面\proc.sql;--1、用sys用戶等陸的話:
Sql代碼
select text from dba_source where owner= 'lingfeng' and type = 'PROCEDURE';--2、用一般用戶(要導出其下存儲過程的用戶):
Sql代碼
select text from user_source;
spool off;
法三:(自己寫存儲過程導出)
1.創建DIRECTORY
Sql代碼
create or replace directory PROCE_DIR as 'C:/Documents and Settings/Administrator/桌面';如創建報沒許可權的錯誤,則以system的用戶登錄,給當前用戶賦權--賦權語句
Sql代碼
grant create any directory to bijian;
--撤權語句
Sql代碼
revoke create any directory from bijian;
創建之後可通過如下語句查詢是否創建成功
Sql代碼
select * from dba_directories;
2.創建導出存儲過程
Sql代碼
create or replace procere loadProce(owner varchar2)is
type user_source_table_type is table of user_source.text%TYPE INDEX BY BINARY_INTEGER;user_source_table user_source_table_type;file_handle utl_file.file_type;
stor_text VARCHAR2(4000);
sql_stat varchar2(1000);
sql_stat2 varchar2(1000);
sql_stat3 varchar2(1000);
nCount NUMBER;
i NUMBER;
begin
sql_stat:='select distinct(name) from all_source where owner = ''' || upper(owner) || '''';execute immediate sql_stat bulk collect into user_source_table;file_handle:=utl_file.fopen('PROCE_DIR','test.sql','W');for j in 1..user_source_table.count loop
i:=1;
sql_stat2:='SELECT MAX(LINE) FROM ALL_SOURCE WHERE OWNER=''' || upper(owner) || ''' AND NAME=''' || user_source_table(j) || '''';--dbms_output.put_line(sql_stat2);
execute immediate sql_stat2 into nCount;
WHILE i<=nCount LOOP
sql_stat3:='SELECT TEXT FROM ALL_SOURCE WHERE OWNER=''' || upper(owner) || ''' AND NAME=''' || user_source_table(j) || ''' and line = ' || i;--dbms_output.put_line(sql_stat3);
execute immediate sql_stat3 into stor_text;i:=i+1;
utl_file.put(file_handle,stor_text);
END LOOP;
end loop;
utl_file.fclose(file_handle);
commit;
end loadProce;
3.調用,將TYPE BODY、PROCEDURE、TYPE、FUNCTION、TRIGGER、PACKAGE BODY、PACKAGE保存到桌面的test.sql中Sql代碼
begin
loadproce('bijian');
end;

D. sybase怎麼批量導出存儲過程

自做一SHELL腳本,
將存儲過程名從 sysobjects中選出
然後通過 sp_helptext 導出
獲取每個存儲過程內容

E. Oracle批量導出存儲過程(保持每個存儲過程獨立)

略微復雜,需要存儲過程實現。

1、創建輸出路徑,比如你要在d盤test目錄下輸出,你就先在d盤根目錄下建立一個test的目錄。

2、sqlplus下以sysdba登錄,執行以下語句

createorreplacedirectoryTMPas'd:	est';

grantread,writeondirectoryTMPtoscott;--比如我用的scott用戶

altersystemsetutl_file_dir='d: est'scope=spfile;

3、以上步驟執行完,需要重啟資料庫。

4、創建一個存儲過程,代碼如下(基本是不用改動,原封復制即可):

CREATEORREPLACEPROCEDURESP_OUTPUT_PROCEDUREis
file_handleutl_file.file_type;
Write_contentVARCHAR2(1024);
Write_file_nameVARCHAR2(50);
v_namevarchar2(50);
v_textvarchar2(2000);
cursorcur_procere_nameis
selectdistinctnamefromuser_sourcewheretype='PROCEDURE';
cursorcur_sp_outis
selectt.text
from(select0line,'CREATEORREPLACE'text
fromal
union
selectline,text
fromuser_source
wheretype='PROCEDURE'
andname=v_name)t
orderbyline;
begin
opencur_procere_name;
loop
fetchcur_procere_name
intov_name;
exitwhencur_procere_name%notfound;
write_file_name:=v_name||'.txt';
opencur_sp_out;
loop
fetchcur_sp_out
intov_text;
exitwhencur_sp_out%notfound;
file_handle:=utl_file.fopen('TMP',write_file_name,'a');
write_content:=v_text;
--writefile
IFutl_file.is_open(file_handle)THEN
utl_file.put_line(file_handle,write_content);
ENDIF;
--closefile
utl_file.fclose(file_handle);
endloop;
closecur_sp_out;
endloop;
closecur_procere_name;
end;

5、創建完畢執行存儲過程,這個就不贅述了,執行完畢後,你會發現d盤test目錄下的文件名就是以存儲過程名命名的txt文件,如圖:

F. 如何導出導入存儲過程

SQL存儲過程的導出導入 SqlServer存儲過程的導出導入 打開「企業管理器」,選擇需要導出存儲過程的資料庫,按右鍵,選擇「所有任務」,打開「生成SQL腳本」 打開「生成SQL腳本」窗口,點擊「全部顯示」按鈕 選擇「全部存儲過程」,其他的「設置格式」和「選項」...

G. Oracle怎麼導出存儲過程

1、首先登錄到資料庫中,點擊右上角有個工具欄,點擊工具欄上的tools。

H. oracle資料庫怎麼導出存儲過程

Oracle怎麼導出存儲過程www.MyException.Cn網友分享於:2014-02-26瀏覽:115次Oracle如何導出存儲過程昨天使用exp可以導出oracle資料庫表,今天說下怎麼導出存儲過程。首先看下使用pl/sql怎麼導出存儲過程。導出步驟:tools-->ExportUs

I. Oracle中用哪個命令可以批量導出存儲過程

這樣試試:
在sqlplus 下:
set echo off;
set heading off;
set feedback off;
spool c:\proc.txt
--1、用sys用戶等陸的話:
select text from dba_source where owner='YOUR_USER' and type ='PROCEDURE';
--2、用一般用戶(要導出其下存儲過程的用戶):
select text from user_source;
spool off;

J. 如何導出一個用戶下的所有表,索引,視圖,存儲過程

如何導出一個用戶下的所有表,索引,視圖,存儲過程
mysql資料庫表結構導出 命令行下具體用法如下: mysqlmp -u用戶名 -p密碼 -d 資料庫名 表名 > 腳本名; 導出整個資料庫結構和數據 mysqlmp -h localhost -uroot -p123456 database > mp.sql 導出單個數據表結構和數據

熱點內容
家用電腦安裝伺服器內存 發布:2025-02-01 14:38:50 瀏覽:255
增量調制編解碼實驗報告 發布:2025-02-01 14:30:30 瀏覽:787
不良人2無敵傷害腳本 發布:2025-02-01 14:23:04 瀏覽:398
地圖flash源碼 發布:2025-02-01 14:13:33 瀏覽:957
家庭影院配置什麼樣的音響 發布:2025-02-01 14:04:33 瀏覽:545
蘋果手機存儲空間不能用怎麼回事 發布:2025-02-01 14:03:04 瀏覽:259
qq易語言盜號源碼 發布:2025-02-01 14:01:25 瀏覽:812
源神比較好的雲伺服器 發布:2025-02-01 13:55:27 瀏覽:208
黑蘋果idea編譯慢 發布:2025-02-01 13:45:30 瀏覽:552
c和linux 發布:2025-02-01 13:39:38 瀏覽:177