DB2 PL/SQL How much reorganisations are recommended on a specific schema
This stored procedure example returns the number of tables for which is a reorganisation is recommended.
The procedure is using the ALLOCATE CURSOR and ASSOCIATE LOCATOR commands to reference to
the output of the REORGCHK_TB_STATS procedure.
create procedure check_reorg_tables (in v_schema varchar(128), out v_reorg_counter integer)
begin
declare loc result_set_locator varying;
declare schema_out varchar(128);
declare table_out varchar(128);
declare card_out integer;
declare overflow_out integer;
declare npages_out integer;
declare fpages_out integer;
declare active_blocks_out integer;
declare tsize_out integer;
declare f1_out integer;
declare f2_out integer;
declare f3_out integer;
declare reorg_out varchar(3);
declare cursor_end smallint default 0;
declare continue handler for NOT FOUND
set cursor_end = 1;
set v_reorg_counter = 0;
call reorgchk_tb_stats('S', v_schema);
associate result set locator(loc) with procedure reorgchk_tb_stats;
allocate mycursor cursor for result set loc;
open mycursor;
repeat
fetch from mycursor into schema_out, table_out, card_out, overflow_out, npages_out, fpages_out, active_blocks_out, tsize_out, f1_out, f2_out, f3_out, reorg_out;
if reorg_out <> '---' then
set v_reorg_counter = v_reorg_counter + 1;
end if;
until cursor_end = 1
end repeat;
close mycursor;
end!
The procedure is using the ALLOCATE CURSOR and ASSOCIATE LOCATOR commands to reference to
the output of the REORGCHK_TB_STATS procedure.
create procedure check_reorg_tables (in v_schema varchar(128), out v_reorg_counter integer)
begin
declare loc result_set_locator varying;
declare schema_out varchar(128);
declare table_out varchar(128);
declare card_out integer;
declare overflow_out integer;
declare npages_out integer;
declare fpages_out integer;
declare active_blocks_out integer;
declare tsize_out integer;
declare f1_out integer;
declare f2_out integer;
declare f3_out integer;
declare reorg_out varchar(3);
declare cursor_end smallint default 0;
declare continue handler for NOT FOUND
set cursor_end = 1;
set v_reorg_counter = 0;
call reorgchk_tb_stats('S', v_schema);
associate result set locator(loc) with procedure reorgchk_tb_stats;
allocate mycursor cursor for result set loc;
open mycursor;
repeat
fetch from mycursor into schema_out, table_out, card_out, overflow_out, npages_out, fpages_out, active_blocks_out, tsize_out, f1_out, f2_out, f3_out, reorg_out;
if reorg_out <> '---' then
set v_reorg_counter = v_reorg_counter + 1;
end if;
until cursor_end = 1
end repeat;
close mycursor;
end!
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22661144/viewspace-1477095/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- How to Find Out How Much Space an Index is UsingIndex
- how much are ghd hair straightenersAI
- DB2 PL/SQL Example: RunstatsDB2SQL
- DB2 PL/SQL Example: Sleep ProcedureDB2SQL
- ejb object too much ,how server working??ObjectServer
- Quoted- How Bulk Binds in PL/SQL Boost PerformanceSQLORM
- DB2 PL/SQL Example: bonus_increaseDB2SQL
- DB2刪除schemaDB2
- 【SCRIPTS】快速清理Schema中所有表和序列的PL/SQL指令碼SQL指令碼
- PL/SQLSQL
- SQL&PL/SQL (轉)SQL
- PL/SQL 宣告SQL
- PL/SQL cursorSQL
- PL/SQL打包SQL
- PL/SQL DEVSQLdev
- SQL can execute in wrong SchemaSQL
- How Python MongoDB Toolkit Ming Can Ease Schema MaintenancePythonMongoDBAINaN
- 使用PL/Scope分析PL/SQL程式碼SQL
- PLSQL Language Reference-PL/SQL概覽-PL/SQL架構SQL架構
- [PL/SQL]10g PL/SQL學習筆記(一)SQL筆記
- [PL/SQL]10g PL/SQL學習筆記(二)SQL筆記
- [PL/SQL]10g PL/SQL學習筆記(三)SQL筆記
- PL/SQL 迴圈SQL
- PL/SQL 遊標SQL
- PL/SQL 運算子SQL
- PL/SQL 條件SQL
- pl/sql to_dateSQL
- PL/SQL 基礎SQL
- Oracle PL/SQL INDICESOracleSQL
- PL/SQl Developer使用SQLDeveloper
- pl/sql陣列SQL陣列
- pl/sql練習SQL
- oracle PL/SQL示例OracleSQL
- 淺談pl/sqlSQL
- PL/SQL 索引表SQL索引
- pl/sql 練習SQL
- [pl sql] where current ofSQL
- pl/sql功能特性SQL