Thursday, 17 October 2024

Search Any Word in Anywhere in Whole Databse

declare

    v_sql varchar2(1000);

    tbl varchar2(100) := 'SYS';

    v_search_string VARCHAR2(1000) := '007';

    cnt varchar2(32767);

begin

    FOR rec IN (

        SELECT table_name, column_name 

        FROM all_tab_columns 

        WHERE table_name NOT LIKE '%SYS%' 

        AND upper(owner) = upper('salyfy') 

        AND data_type IN ('VARCHAR2')

    ) loop

        v_sql := 'SELECT count(*) FROM ' || rec.table_name || 

                 ' WHERE ' || rec.column_name || ' LIKE ''%' || v_search_string || '%''';

        

        dbms_output.put_line('Executing: ' || v_sql); -- Debug print

        BEGIN

            execute immediate v_sql into cnt;

            dbms_output.put_line('Count: ' || cnt);

            insert into chk_dum_rec(cnts, tbl_name, column_name) values (cnt, rec.table_name, rec.column_name);

        EXCEPTION

            WHEN NO_DATA_FOUND THEN

                dbms_output.put_line('No data found for query: ' || v_sql);

            WHEN OTHERS THEN

                dbms_output.put_line('Error occurred: ' || SQLERRM);

        END;

    end loop;

EXCEPTION 

    WHEN NO_DATA_FOUND THEN 

        NULL;

        commit;

END;


No comments:

Post a Comment

Check Internet Connectivity on Local System

if (!navigator.onLine) {     showOfflineAlert(); } else {     // Set a strict 3-second network timeout threshold     const controller = new ...