At 10:04 a.m. 24/02/2015, Ernesto Benestante ebenesta...@gmx.net 
[firebird-support] wrote:
>Hi, does FDB support named parameters in queries? Other python database 
>adapters support specifying a name for the parameters in the SQL string 
>and passing a dict to execute(), to bind the parameters to its values. 
>Something like this:
>
>cur.execute('select * from customers where id = %(cid)d', {'cid': 3})
>
>That does not work with FDB:
>
>Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
>   File "/usr/local/lib/python3.4/dist-packages/fdb/fbcore.py", line 
>3352, in execute
>     self._ps = PreparedStatement(operation, self, True)
>   File "/usr/local/lib/python3.4/dist-packages/fdb/fbcore.py", line 
>1985, in __init__
>     "Error while preparing SQL statement:")
>fdb.fbcore.DatabaseError: ('Error while preparing SQL statement:\n- 
>SQLCODE: -104\n- Dynamic SQL Error\n- SQL error code = -104\n- Token 
>unknown - line 1, column 37\n- %', -104, 335544569)
>
>Is there another way?

The Firebird SQL engine itself does not support named parameters but most (if 
not all) client layers do provide mechanisms for them.  The syntax will be 
specific to the driver.

Please subscribe to the firebird-python list to inquire about the correct 
Python syntax to do it.  You can subscribe at 
http://www.firebirdsql.org/en/mailing-lists/

^heLen^

  • [firebird-suppor... Ernesto Benestante ebenesta...@gmx.net [firebird-support]
    • Re: [firebi... Helen Borrie hele...@iinet.net.au [firebird-support]

Reply via email to