Thread: compatibility issue with DirectFunctionCall1

compatibility issue with DirectFunctionCall1

From
Pavel Stehule
Date:
Hello,

I am working on testing Orafce for PostgreSQL 9.1. I found a issue.

I cannot directly call a function "lower".

Is it correct?
 select dbms_assert.enquote_name('''"AAA');
!  enquote_name.
! --------------
!  "'""aaa"
! (1 row)
!. select dbms_assert.enquote_name('''"AAA', false);  enquote_name. --------------
--- 1180,1188 ---- (1 row)
.. select dbms_assert.enquote_name('''"AAA');
! ERROR:  could not determine which collation to use for lower() function
! HINT:  Use the COLLATE clause to set the collation explicitly.
! CONTEXT:  SQL function "enquote_name" statement 1 select dbms_assert.enquote_name('''"AAA', false);  enquote_name.

Datum
dbms_assert_enquote_name(PG_FUNCTION_ARGS)
{
<------>Datum name  = PG_GETARG_DATUM(0);   <-->bool loweralize = PG_GETARG_BOOL(1);

<------>name = DirectFunctionCall1(quote_ident, name);

<------>if (loweralize)
<------><------>name = DirectFunctionCall1(lower, name);

<------>PG_RETURN_DATUM(name);
}

Regards

Pavel Stehule


Re: compatibility issue with DirectFunctionCall1

From
Heikki Linnakangas
Date:
On 27.05.2011 12:06, Pavel Stehule wrote:
> Hello,
>
> I am working on testing Orafce for PostgreSQL 9.1. I found a issue.
>
> I cannot directly call a function "lower".

See DirectFunctionCall1Coll()

--   Heikki Linnakangas  EnterpriseDB   http://www.enterprisedb.com


Re: compatibility issue with DirectFunctionCall1

From
Pavel Stehule
Date:
2011/5/27 Heikki Linnakangas <heikki.linnakangas@enterprisedb.com>:
> On 27.05.2011 12:06, Pavel Stehule wrote:
>>
>> Hello,
>>
>> I am working on testing Orafce for PostgreSQL 9.1. I found a issue.
>>
>> I cannot directly call a function "lower".
>

> See DirectFunctionCall1Coll()

ook

Thank you

Pavel
>
> --
>  Heikki Linnakangas
>  EnterpriseDB   http://www.enterprisedb.com
>