On May 17, 2013, at 11:36 AM, M.-A. Lemburg <[email protected]> wrote:
> On 17.05.2013 17:10, Christoph Zwerschke wrote:
>> Am 17.05.2013 17:01, schrieb Vernon D. Cole:
>>> What other options should be considered?
>>
>> Another option would be to get rid of the parameter completely, and silently
>> accept both styles,
>> whatever is used in the sql command passed to the execute method.
>
> This would violate explicit is better than implicit, and it also
> creates problems with raising proper errors, e.g. passing a
> dictionary of parameters to a SQL command which uses a mix
> of qmark and named style parameter markers.
>
> We do need to keep this explicit.
IMHO it is explicit, whether you say:
cursor.execute(stmt, { < dictionary>} )
vs.
cursor.execute(stmt, [ <list>] )
the type of parameters passed indicates the style of params to search for.
It's explicit via type inference. if a dictionary is passed, "?" symbols are
left alone. If a list is passed, ":param" symbols are left alone. If neither
is passed, then neither ? nor :param are searched for.
_______________________________________________
DB-SIG maillist - [email protected]
http://mail.python.org/mailman/listinfo/db-sig