Subject | Re: [firebird-support] Re: Hex string literal, blob not supported for conversion? |
---|---|
Author | Martijn Tonies (Upscene Productions) |
Post date | 2015-08-31T16:12:13Z |
Hello Lester,
Point is, when the hex literal is put into a table, Firebird transforms the
literal
into a BLOB, but when it needs to pass a value to an external function, it
can't
do the same.
That's confusing.
Why would an external function require a field name as the "blob value"? It
expects a blob value. From the user point of view, I see no reason why this
can't be a temporary blob, or a just-converted-blob, like the SQL INSERT
statement can.
With regards,
Martijn Tonies
Upscene Productions
http://www.upscene.com
Download Database Workbench for Oracle, MS SQL Server, Sybase SQL
Anywhere, MySQL, InterBase, NexusDB and Firebird!
>m.tonies@... [firebird-support] wrote:I know a bit about the implementation and blob descriptors etc.
>> Nevertheless, the parameter is BLOB. Why is one blob conversion
>> supported,
>> but an other, that looks the same to the user, fails?
>
>Martijn ... I always thought that the 'blob' in a function had to be an
>existing blob element i.e. a field in an existing table, so trying to
>upload a static variable in the first example is wrong as it does not
>exist as a blob, while your insert is converting the static variable
>into a format that can be stored in the identified blob. Your blob
>function needs the field name of the blob you want to work with?
Point is, when the hex literal is put into a table, Firebird transforms the
literal
into a BLOB, but when it needs to pass a value to an external function, it
can't
do the same.
That's confusing.
Why would an external function require a field name as the "blob value"? It
expects a blob value. From the user point of view, I see no reason why this
can't be a temporary blob, or a just-converted-blob, like the SQL INSERT
statement can.
With regards,
Martijn Tonies
Upscene Productions
http://www.upscene.com
Download Database Workbench for Oracle, MS SQL Server, Sybase SQL
Anywhere, MySQL, InterBase, NexusDB and Firebird!