vBulletin Search Engine Optimization
| |||||||
| Register | FAQ | Members List | Calendar | Search | Today's Posts | Mark Forums Read |
| ||||
| Just a small warning for those people using python with postgresql: pysgresql and psycopg are very different animals. You cannot drop in one as a replacement for the other, even though both 'claim' to be DB API 2.0 compliant. If you are starting out with python on postgresql, I would strongly recommend looking at psycopg. It seems a much cleaner implementation of the DB API. Alex Turner NetEconomist ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings |
| |||
| On Thursday 10 February 2005 08:56 pm, Alex Turner wrote: > Just a small warning for those people using python with postgresql: > pysgresql and psycopg are very different animals. You cannot drop in > one as a replacement for the other, even though both 'claim' to be DB > API 2.0 compliant. None of the python postgresql drivers are drop in replacements for each other. Some drivers, such as popy return all data as strings, some have broken fetchmany support, each IIRC return different exceptions in different situations. Pygresql has its own API that I believe predates DBAPI 2.0 and support for the standard API was added at a later date. shameless plug..... One feature of gnuenterprize.org's common library is a datasource system that uses a single connections.conf file that contains entries like [devel] comment = Development DB provider = psycopg host = rdbms.gnuenterprise.org dbname = devel to setup a connection to a database named "devel". Providers can be any of the 4 postgresql drivers, oracle, db2, ingres, mysql, ado, odbc, etc, etc. Most if not all the dbsig 2 drivers are supported. Other formats such a dbf and csv are supported to varying degrees. You can switch out databases by editing that one file. Providers are not limited to just databases either, our application server is just another provider in our system. Differences between providers are handled transparently to the developer. Take Care, James ---------------------------(end of broadcast)--------------------------- TIP 4: Don't 'kill -9' the postmaster |
| ||||
| Funny you should say that - the system I am developing has a similar system, although not as fully developed. I am now having trouble with psycopg locking up my database somehow. It's almost like there are outstanding locks on objects in the database that are preventing other threads operating. Talk about a frustrating week. Alex Turner netEconomist On Fri, 11 Feb 2005 08:58:21 -0600, James Thompson <jamest@ajrs.com> wrote: > On Thursday 10 February 2005 08:56 pm, Alex Turner wrote: > > Just a small warning for those people using python with postgresql: > > pysgresql and psycopg are very different animals. You cannot drop in > > one as a replacement for the other, even though both 'claim' to be DB > > API 2.0 compliant. > > None of the python postgresql drivers are drop in replacements for each other. > Some drivers, such as popy return all data as strings, some have broken > fetchmany support, each IIRC return different exceptions in different > situations. Pygresql has its own API that I believe predates DBAPI 2.0 and > support for the standard API was added at a later date. > > shameless plug..... > > One feature of gnuenterprize.org's common library is a datasource system that > uses a single connections.conf file that contains entries like > > [devel] > comment = Development DB > provider = psycopg > host = rdbms.gnuenterprise.org > dbname = devel > > to setup a connection to a database named "devel". Providers can be any of > the 4 postgresql drivers, oracle, db2, ingres, mysql, ado, odbc, etc, etc. > Most if not all the dbsig 2 drivers are supported. Other formats such a dbf > and csv are supported to varying degrees. You can switch out databases by > editing that one file. Providers are not limited to just databases either, > our application server is just another provider in our system. Differences > between providers are handled transparently to the developer. > > Take Care, > James > > ---------------------------(end of broadcast)--------------------------- > TIP 4: Don't 'kill -9' the postmaster > ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings |