The following lines contain the word 'select', 'insert', 'update' or 'delete':
logical_delete varchar2(1),
parent_table_alias varchar2(30)
);
select distinct level,
table_id,
lower(column_name) column_name,
parent_table_id,
lower(parent_column_name) parent_column_name,
'N' logical_delete
from ( select table_id,
column_name,
parent_table_id,
parent_column_name,
'N' logical_delete
from hr_dm_hierarchies
where hierarchy_type = 'PC')
start with table_id = p_table_info.table_id
connect by prior parent_table_id = table_id
order by level desc;
g_hierarchy_info_tbl(l_index).logical_delete := 'N';
g_hierarchy_info_tbl.delete(l_index);
g_where_clause_tbl.delete(l_index);
procedure clear_logical_deletes is
l_index number := g_hierarchy_info_tbl.last;
hr_dm_utility.message('ROUT','entry:hr_dm_imp_bg_where.clear_logical_deletes', 5);
if g_hierarchy_info_tbl(l_index).logical_delete = 'Y' then
g_hierarchy_info_tbl(l_index).logical_delete := 'N';
hr_dm_utility.message('ROUT','exit:hr_dm_imp_bg_where.clear_logical_deletes', 25);
hr_dm_utility.error(SQLCODE,'hr_dm_imp_bg_where.clear_logical_deletes',
'(none)','R');
end clear_logical_deletes;
and g_hierarchy_info_tbl(l_index).logical_delete = 'N'
and l_index <> l_original_row_index then
p_search_index := l_index;
procedure delete_table_rows
( p_child_table in varchar2) is
-- l_index number := p_index;
hr_dm_utility.message('ROUT','entry:hr_dm_imp_bg_where.delete_table_rows', 5);
g_hierarchy_info_tbl.delete(l_parent_table_index);
hr_dm_utility.message('ROUT','exit:hr_dm_imp_bg_where.delete_table_rows', 25);
hr_dm_utility.error(SQLCODE,'hr_dm_imp_bg_where.delete_table_rows',
'( p_child_table - ' || p_child_table ||
')','R');
end delete_table_rows;
g_hierarchy_info_tbl.delete(l_pc_table_index);
g_hierarchy_info_tbl(l_pc_table_index).logical_delete := 'Y';
if p_cursor_type in ('DOWNLOAD', 'DELETE_SOURCE') and
p_query_type = 'MAIN_QUERY' then
if p_table_info.surrogate_primary_key = 'Y' then
g_where_clause_tbl(g_where_clause_index) :=
g_where_clause_tbl(g_where_clause_index) || indent(l_indent) ||
' and ' || p_table_info.alias || '.' ||
p_table_info.surrogate_pk_column_name || ' between p_start_id ' ||
'and p_end_id' ;
|| '.last_update_date >= nvl(p_last_migration_date,'|| l_who_info_alias
|| '.last_update_date)';
clear_logical_deletes;
g_hierarchy_info_tbl.delete(l_table_index);
delete_table_rows(l_child_table);
l_where_clause := l_where_clause || 'exists ( select 1';