Re: API 3.0 limiting paramstyle to ['named', 'qmark'] is okay. ('format' is not desirable)

Michael Bayer <[email protected]>
Newsgroups gmane.comp.python.db
Message-ID <[email protected]>
On May 17, 2013, at 11:01 AM, Vernon D. Cole <[email protected]> wrote:

> Good point, the others would be optional.
> 
> How should the switching be done?  My present development head has four methods:
> 
> 1) adodbapi.apibase.paramstyle = 'named' 
> I think this one should be deprecated.  Stepping on a module quasi-constant is never a good idea.
> 
> 2) adodbapi.connect(connection_string, paramstyle='named')
> I just added this one, so a django adapter can hand me a bucketfull of keyword arguments.  I think I like this the best in terms of ease-of-use.  
> 
> 3) conn = adodbapi.connect(connection_string)
>    conn.paramstyle = 'named'
> This is the most obvious, and provides lots of power.  The programmer could use 'qmark' to load big INSERT statements, then switch to 'named' for detailed SELECT or UPDATE.  The default value is determined by the module author.
> 
> 4) cursor.paramstyle = 'named'
> I have this implemented, but the more I think about it, the more it seems unnecessary.
> 
> What other options should be considered?


My vote is at the module level:

from psycopg2 import dbapi2

vs. 

from psycopg2 import dbapi3

and if you are using dbapi3, it only supports named and qmark.   If you're in dbapi2, then you can have "paramstyle" keywords and all that.   I'm hoping for dbapi3 to be more consistent and less switchy.


_______________________________________________
DB-SIG maillist  -  [email protected]
http://mail.python.org/mailman/listinfo/db-sig
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.