- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
Declare
alph Varchar2(26) := 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
ch Varchar2(1);
Begin
dbms_output.put_line('Starting search: ' || srch);
For i In 1..26 Loop
Select Substr(alph,i,1) Into ch From dual;
with
v_tab_col as (
Select '"' || c.Table_Name || '"' As Table_Name,
'"' || c.Column_Name || '"' As Column_Name,
'"' || c.Owner || '"' As Owner,
Row_Number() Over(Partition By c.Owner, c.Table_Name Order By c.Column_Id) As Rn
From Dba_Tab_Columns c, Dba_Objects o
Where Data_Type In ('CHAR', 'VARCHAR2')
And c.Table_Name = o.Object_Name
And o.Object_Type = 'TABLE'
And o.Owner = c.Owner
And o.object_name Like ch || '%' -- checking by letter
Циклическая выборка таблиц, начинающихся на букву алфавита, в каждом следующем прогоне берется следующая.