> >> As this example points out, x'##'-codes are not properly matched by > >> similar > >> to: > >> > >> select > >> iif(' ' similar to '[[:WHITESPACE:]]', 'T', 'F'), > >> iif(x'20' similar to '[[:WHITESPACE:]]', 'T', 'F'), > >> iif(x'20' similar to '%', 'T', 'F') from RDB$DATABASE > >> > >> returns 'T', 'F', 'F'
> > I would have thought that the engine would 'auto-translate' the values > > based on the context. > > In this context there is no way for the engine to decide what other character > set would be the right one... In other uses/examples, I might agree but in the example provided it seems pretty straight-forward to me: If an operator is comparing OCTETS against a string value, OCTETS value should be coerced into the charset of the other value. Considering that all databases have a CHARSET (even if NONE), it seems logical to say that all SP variables inherent the db charset unless otherwise specified through an introducer. Sean ------------------------------------------------------------------------------ How ServiceNow helps IT people transform IT departments: 1. A cloud service to automate IT design, transition and operations 2. Dashboards that offer high-level views of enterprise services 3. A single system of record for all IT processes http://p.sf.net/sfu/servicenow-d2d-j Firebird-Devel mailing list, web interface at https://lists.sourceforge.net/lists/listinfo/firebird-devel