Subject RE: [firebird-support] How do I upgrade from FreeUDFLib to FreeAdhocUDFLib?
Author Elkins Villalona
A few months ago I found myself in the same situation and I did not find any
information about migrating from freudflib to freeadhocudflib. So I did some
test and found this solution that worked for me. Use it at your own risk
with a database copy.



1.- Drop de actual dependencies on freudflib.

a. Create and empty table with the same structure as rdb$dependencies.

b. Populate it with the freeudflib dependencies

INSERT INTO new_table

select * from rdb$dependencies

where rdb$depended_on_name starting with 'F_'

c. Delete the freudflib dependencies from the rdb$dependencies table

DELETE FROM rdb$dependencies

where rdb$depended_on_name starting with 'F_'

2.- Drop the freeudflib functions from the database.

If you don't have a script that do the trick you may create one using the
result from this query

select 'DROP EXTERNAL FUNCTION '||RDB$FUNCTION_NAME FROM RDB$FUNCTIONS

WHERE RDB$FUNCTION_NAME STARTING WITH 'F_'

3. Use the script declarations_all_dialect1.sql or
declarations_all_dialect3.sql that comes with FreeAdhocUDFLib.dll to declare
the new functions. Obviously using each one depends on the database dialect.


4. Put the dependencies back into the rdb$dependencies table

INSERT INTO rdb$dependencies

select * from new_table



I hope this approach be useful for you,

Elkins



De: firebird-support@yahoogroups.com
[mailto:firebird-support@yahoogroups.com] En nombre de SoftTech
Enviado el: lunes, 26 de abril de 2010 12:59 p.m.
Para: firebird-support@yahoogroups.com
Asunto: [firebird-support] How do I upgrade from FreeUDFLib to
FreeAdhocUDFLib?





Greetings,

I'm using Firebird v1.5 and have a FreeUDFLib.dll from 6/5/2003 located in
the C:\Program Files\Firebird\Firebird_1_5\UDF directory.

I'm wanting to upgrade or replace FreeUDFLib.dll with FreeAdhocUDFLib.dll

I have been looking around the freeadhocudf.org website, but cannot find any

installation instruction.

Can anyone tell me what I need to do?

Thanks,
Mike



[Non-text portions of this message have been removed]