Last active
May 20, 2025 18:32
-
-
Save wilyJ80/e768a5997d1f1549a307b3b568f282c7 to your computer and use it in GitHub Desktop.
FB db text search utils
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
set term ^ ; | |
execute block | |
returns ( | |
RESULT1 varchar(255), RESULT2 varchar(255), | |
RESULT3 BLOB, result4 varchar(255) ) | |
as | |
declare search_query varchar(32) = 'PAC'; | |
BEGIN | |
/* search table names */ | |
for | |
select RDB$RELATION_NAME | |
from rdb$relations | |
where RDB$RELATION_NAME | |
containing :search_query | |
into result1 | |
do | |
BEGIN | |
--SUSPEND; | |
END | |
/* search column names and their table names */ | |
FOR | |
select RDB$FIELD_NAME, rdb$relation_name | |
from RDB$RELATION_FIELDS | |
where RDB$FIELD_NAME | |
containing :search_query | |
into result1, result2 | |
do | |
BEGIN | |
--suspend; | |
end | |
/* search stored procedures names */ | |
for | |
select RDB$PROCEDURE_NAME | |
from RDB$PROCEDURES | |
where RDB$PROCEDURE_NAME | |
containing :search_query | |
into result1 | |
do | |
BEGIN | |
--suspend; | |
END | |
/*search trigger names */ | |
FOR | |
select RDB$TRIGGER_NAME | |
from RDB$TRIGGERS | |
where RDB$TRIGGER_NAME | |
containing :search_query | |
into result1 | |
do | |
BEGIN | |
--suspend; | |
END | |
/* select in procedure source code */ | |
FOR | |
select rdb$procedure_name, null, | |
rdb$procedure_source, | |
cast(substring(rdb$procedure_source | |
from 1 for 255) as varchar(255)) | |
from RDB$PROCEDURES | |
where rdb$procedure_source | |
containing :search_query | |
into result1, result2, result3, result4 | |
do | |
BEGIN | |
--suspend; | |
END | |
/* select in trigger source code */ | |
FOR | |
select rdb$trigger_name, null, | |
rdb$trigger_source, | |
cast(substring(rdb$trigger_source | |
from 1 for 255) as varchar(255)) | |
from rdb$triggers | |
where rdb$trigger_source | |
containing :search_query | |
into result1, result2, result3, result4 | |
do | |
begin | |
--suspend; | |
END | |
END ^ | |
set term ; ^ |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment