Re: Query with boolean parameter - Mailing list psycopg

From Paolo De Stefani
Subject Re: Query with boolean parameter
Date
Msg-id d88ac5f2ae2457bb2b97f98c47cfcdfc@paolodestefani.it
Whole thread Raw
In response to Re: Query with boolean parameter  (Christophe Pettus <xof@thebuild.com>)
Responses Re: Query with boolean parameter
Re: Query with boolean parameter
Re: Query with boolean parameter
List psycopg
Il 19/03/2022 01:00 Christophe Pettus ha scritto:
>> On Mar 18, 2022, at 16:56, Paolo De Stefani <paolo@paolodestefani.it> 
>> wrote:
>> Is there any reason why the second query results in a syntax error?
> 
> There's not IS operator in PostgreSQL (or in SQL).  IS NULL, IS NOT
> NULL, IS TRUE, and IS FALSE are in effect unary postfix operators, so
> you can't construct them that way via parameter substitution.

Thanks, i see

The problem is (for me) that with psycopg2 this works:
cur.execute('SELECT * FROM system.app_user WHERE can_edit_views IS 
TRUE')
cur.execute('SELECT * FROM system.app_user WHERE can_edit_views IS %s', 
(True,))
cur.execute('SELECT * FROM system.app_user WHERE can_edit_views IS %s', 
(None,))

Switching to psycopg 3 i have to consider many more differences than i 
expected

-- 
Paolo De Stefani



psycopg by date:

Previous
From: Christophe Pettus
Date:
Subject: Re: Query with boolean parameter
Next
From: Daniele Varrazzo
Date:
Subject: Re: Query with boolean parameter