Re: convert integer to bool implicitly

From: Sim Zacks <sim(at)compulab(dot)co(dot)il>
To: pgsql-general(at)postgresql(dot)org
Subject: Re: convert integer to bool implicitly
Date: 2005-12-18 19:01:01
Message-ID: do4bno$23gu$1@news.hub.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

I know I can do it explicitly, I need to do it implicitly.
I am having a problem with a Microsoft Access front-end , that uses -1
as true and 0 as false.
I have everything worked around all the places where I could find it by
using a cbool(), but this doesn't work with filters, which probably call
a "select where field =-1 or =0." automatically by access.

I get an ODBC error saying that "Operator does not exist: boolean=integer.

I would like to create the implicit conversion, so that it works both
without the cbool from now on, and that filters should work fine.
I have tried a number of different ODBC settings, and no matter what
setting there is always one problem or another that has to be overcome.
I can get it all to work if I put a Before Insert and Update trigger and
change the -1 to true, but I would have to do that for every boolean
field in my application. It would be a lot easier and make sense
system-wise to implicitly convert the integer to bool.

Andreas Kretschmer wrote:
> Sim Zacks <sim(at)compulab(dot)co(dot)il> schrieb:
>
>> How easy would it be to write a small type extension to have integer
>> automatically convert to bool?
>> For example, I want an implicit conversion that 0 is false and everything
>> else is true.
>
> test=# \d foo;
> Table "public.foo"
> Column | Type | Modifiers
> --------+---------+-----------
> val | integer |
>
> test=# select * from foo;
> val
> -----
> 0
> 1
> 2
> 3
> (4 rows)
>
> test=# select val::bool from foo;
> val
> -----
> f
> t
> t
> t
> (4 rows)
>
>
>> Is this C programming or can you do it with a local procedural language?
>
> You can use regular casts.
>
>
> HTH, Andreas

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Sim Zacks 2005-12-18 19:29:42 Re: convert integer to bool implicitly
Previous Message Andreas Kretschmer 2005-12-18 18:58:15 Re: convert integer to bool implicitly