RE: [firebird-support] Script with 'Drop' in it
I would like to add a script that does a DROP EXTERNAL FUNCTION SQRT. The problem I have is that some of the databases that will run this script already have the UDF dropped and so the script errors. Is there a way to run statements like DROP INDEX, DROP EXTERNAL FUNCTION, etc. in a script without generating an error of the object isn't found? In a pure SQL script, I wouldn't know. This should do: EXECUTE BLOCK AS BEGIN IF (EXISTS (SELECT 1 FROM RDB$Functions WHERE RDB$FunctionName = 'SQRT') ) THEN EXECUTE STATEMENT 'DROP EXTERNAL FUNCTION SQRT'; END Sean
Re: [firebird-support] Script with 'Drop' in it
Hello Todd, I would like to add a script that does a DROP EXTERNAL FUNCTION SQRT. The problem I have is that some of the databases that will run this script already have the UDF dropped and so the script errors. Is there a way to run statements like DROP INDEX, DROP EXTERNAL FUNCTION, etc. in a script without generating an error of the object isn't found? In a pure SQL script, I wouldn't know. But your application could check if the UDF name exists in RDB$FUNCTIONS and if so, execute DROP EXTERNAL FUNCTION. Cheers, Paul Vinkenoog