如何實現一個功能,將oracle中一個使用者下的所有表結構匯出到.sql檔案中
pub上的一個案例
http://www.itpub.net/thread-985145-1-1.html
1.用system使用者建立路徑 utl_dir用於存放檔案
SQL> create or replace directory UTL_DIR as 'd:\dba';
SQL> grant write on directory UTL_DIR to public;
SQL> grant read on directory UTL_DIR to public;
2.在hr使用者建立儲存過程 匯出單個表結構
create or replace procedure p_exportDLL(p_table_name varchar2,p_filename varchar2) is
begin
declare
l_file UTL_FILE.FILE_TYPE;
l_buffer VARCHAR2(1000);
l_amount BINARY_INTEGER := 100;
l_pos INTEGER := 1;
l_clob clob;
l_clob_len INTEGER;
begin
select dbms_metadata.get_ddl('TABLE',p_table_name )||';' into l_clob from dual;
l_clob_len := DBMS_LOB.GETLENGTH(l_clob);
l_file := UTL_FILE.FOPEN('UTL_DIR', p_filename||'.sql', 'a', 1000);
WHILE l_pos < l_clob_len LOOP
DBMS_LOB.READ(l_clob, l_amount, l_pos, l_buffer);
UTL_FILE.put(l_file, l_buffer);
l_pos := l_pos + l_amount;
END LOOP;
UTL_FILE.FCLOSE(l_file);
--if @@error
end;
end p_exportDLL;
3.匯出所有表的結構
CREATE OR REPLACE PROCEDURE p_whole AS
BEGIN
FOR x IN (SELECT table_name FROM user_tables) LOOP
p_exportDLL(x.table_name,'paul');
END LOOP;
END p_whole;
驗證
SQL> begin
2 -- Call the procedure
3 p_whole;
4 end;
5 /
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7199859/viewspace-263656/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Oracle中的表結構匯出到wordOracle
- 表結構匯出到excel中Excel
- 如何將資料熱匯出到檔案
- MySQL 將查詢結果匯出到檔案MySql
- Oracle中將一個使用者的所有物件授權給另一個使用者Oracle物件
- oracle 匯出某個使用者下的表Oracle
- 多個報表匯出到一個 excel 的多 sheet 頁Excel
- 將一個使用者下所有表的查詢許可權賦給另一個使用者
- 如何將一個PDF檔案裡的圖片批量匯出
- python實現將資料夾內所有txt檔案合併成一個檔案Python
- 將命令列提示符裡的執行結果匯出到text檔案中命令列
- 刪除一個使用者下的所有表指令碼指令碼
- Oracle如何把一個表匯出匯入到另一個伺服器上的另一個表裡Oracle伺服器
- 一個ORACLE匯入和匯出XML檔案的例子OracleXML
- 用SQL Loader將Excel資料匯出到OracleSQLExcelOracle
- 將dataGridView內容匯出到Excel檔案ViewExcel
- Oracle 刪除使用者、表空間、資料檔案、使用者下的所有表Oracle
- 多個excel檔案合併到一個檔案中的多個sheet表中Excel
- Oracle統計某個使用者下所有表的各自行數Oracle
- 兩個目錄中,刪除其中一個目錄中同名檔案的做法
- Javascript 實現一個post方式的檔案下載JavaScript
- 如何居中一個元素(終結版)
- windows 批處理把所有java原始碼匯入一個txt檔案中WindowsJava原始碼
- 匯出多個檔案到一個Excel中的不同sheetsExcel
- 將framework檔案放在一個單獨的檔案中Framework
- VUE3+jszip和file-saver如何實現下載多個檔案匯出為一個zip格式VueJS
- 最近很火的Vue Vine是如何實現一個檔案中寫多個元件Vue元件
- 將MYSQL中資料匯出到EXCEL表MySqlExcel
- 如何殺掉一個使用者下的所有程式並drop掉這個使用者
- 用python寫一個指令碼:將指定目錄下及其所有子資料夾的所有的“srt”檔案的內容合併到一個新的srt檔案中Python指令碼
- 如何在macOS中一次重新命名多個檔案Mac
- [譯文]如何實現一個單檔案元件元件
- oracle實用sql(12)--查詢資料是否在某個使用者下各個表的各個列OracleSQL
- 如何實現一個跨庫連表SQL生成器?SQL
- 定時將表資料匯出到文字檔案的初步解決方案,求改進
- SQL loader 匯入csv格式的表格檔案的一個例子SQL
- SQL Server中獲取一個資料庫的所有表的列數SQLServer資料庫
- 控制檔案損壞,丟失其中一個