Subject Re: [firebird-support] Re: ib_udf, fbudf & UTF-8
Author Paul Vinkenoog
Hi,

> The followings has CSTRING in or out parameters :
> lpad, rpad : UTF8 support?

No.

> alternatives if not?

Internal LPAD, RPAD, added in Firebird 2.1

> I assume that builtin function handles all kind of string correctly :
> rtrim : builtin TRIM SQL function
> strlen : builtin LENGTH SQL function

That one doesn't exist. We have CHAR[ACTER]_LENGTH, OCTET_LENGTH and BIT_LENGTH.

> lpad, rpad : builtin LPAD, RPAD SQL function (we're currently support only fb 2.0.x, but these came form 2.1.x)

> substr UDF and SUBSTRIGN builtin function has different syntax.

Yes, but conversion should not be too hard.

In Firebird 2.1, lots of new internal functions were added, making the ib_udf library as good as redundant.

I think you should assume that none of the UDF string functions support multi-byte character sets, but you can always have a look at the source:

http://firebird.cvs.sourceforge.net/viewvc/firebird/firebird2/src/extlib/

The internal functions all support multi-byte character sets. Wherever there are known limitations or serious bugs, they have been documented:

http://www.firebirdsql.org/refdocs/langrefupd21-intfunc.html

If you plan to move to UTF-8, I think you should also upgrade to at least Firebird 2.1. Otherwise you'll have to write your own mbpc-aware string functions.


Good luck,
Paul Vinkenoog