[Zope-DB] ANN: eGenix mxODBC Plone/Zope Database Adapter 2.2.1
ANNOUNCING mxODBC Plone/Zope Database Adapter Version 2.2.1 for the Plone CMS and Zope server platform Available for Plone 4.0-4.3 and Plone 5.0, Zope 2.12 and 2.13, on Windows, Linux, Mac OS X, FreeBSD and other platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.2.1-GA.html INTRODUCTION The eGenix mxODBC Zope DA allows you to easily connect your Zope or Plone CMS installation to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix product mxODBC and the flexibility of the ODBC standard as middle-tier architecture. The mxODBC Zope Database Adapter is highly portable, just like Zope itself and provides a high performance interface to all your ODBC data sources, using a single well-supported interface on Windows, Linux, Mac OS X, FreeBSD and other platforms. This makes it ideal for deployment in ZEO Clusters and Zope hosting environments where stability and high performance are a top priority, establishing an excellent basis and scalable solution for your Plone CMS. Product page: http://www.egenix.com/products/zope/mxODBCZopeDA/ NEWS The 2.2.1 release of our mxODBC Zope/Plone Database Adapter product is a patch level release of the popular ODBC database interface for Plone and Zope. It includes these enhancements and fixes: Feature Updates --- * Fully compatible with *Zope External Methods* and Zope's built-in transaction mechanism: use Connection Objects in Python modules set up as Zope External Methods to all the features of the mxODBC Zope DA from Python and even tap into the low-level features of mxODBC within Zope's transaction mechanism. * Full support of *Stored Procedures*: when using Zope External Methods, you have full access to SQL stored procedures, which allows direct integration with external database APIs. Driver Compatibility Enhancements - * ODBC driver compatibility updated. Upgraded to the latest mxODBC 3.3.2 release, adding compatibility enhancements for MS SQL Server, SAP Sybase ASE and stored procedure output parameters. See the mxODBC 3.3.0 and 3.3.2 release announcements for full details. http://www.egenix.com/company/news/eGenix-mxODBC-3.3.2-GA.html Fixes - * Documented use of allow_hosts in buildout.cfg The complete list of changes is available on the mxODBC Zope DA changelog page. http://www.egenix.com/products/zope/mxODBCZopeDA/changelog.html mxODBC Zope DA 2.2.0 was released on 2014-12-11. Please see the mxODBC Zope DA 2.2.0 release announcement for all the new features we have added. http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.2.0-GA.html For the full list of features, please see the mxODBC Zope DA feature list: http://www.egenix.com/products/zope/mxODBCZopeDA/#Features The complete list of changes is available on the mxODBC Zope DA changelog page. UPGRADING Users are encouraged to upgrade to this latest mxODBC Plone/Zope Database Adapter release to benefit from the new features and updated ODBC driver support. We have taken special care not to introduce backwards incompatible changes, making the upgrade experience as smooth as possible. For major and minor upgrade purchases, we will give out 20% discount coupons going from mxODBC Zope DA 1.x to 2.2 and 50% coupons for upgrades from mxODBC 2.x to 2.2. After upgrade, use of the original license from which you upgraded is no longer permitted. Patch level upgrades (e.g. 2.2.0 to 2.2.1) are always free of charge. Please contact the eGenix.com Sales Team with your existing license serials for details for an upgrade discount coupon. If you want to try the new release before purchase, you can request 30-day evaluation licenses by visiting our web-site or writing to sa...@egenix.com, stating your name (or the name of the company) and the number of eval licenses that you need. http://www.egenix.com/products/python/mxODBCZopeDA/#Evaluation DOWNLOADS Please visit the eGenix mxODBC Zope DA product page for downloads, instructions on installation and documentation of the packages: http://www.egenix.com/company/products/zope/mxODBCZopeDA/ If you want to try the package, please jump straight to the download instructions: http://www.egenix.com/products/zope/mxODBCZopeDA/#Download Fully functional evaluation licenses for the mxODBC Zope DA are available free of charge:
[Zope-DB] ANN: eGenix mxODBC Plone/Zope Database Adapter 2.2.0
ANNOUNCING mxODBC Plone/Zope Database Adapter Version 2.2.0 for the Plone CMS and Zope server platform Available for Plone 4.0-4.3 and Plone 5.0, Zope 2.12 and 2.13, on Windows, Linux, Mac OS X, FreeBSD and other platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.2.0-GA.html INTRODUCTION The eGenix mxODBC Zope DA allows you to easily connect your Zope or Plone CMS installation to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix product mxODBC and the flexibility of the ODBC standard as middle-tier architecture. The mxODBC Zope Database Adapter is highly portable, just like Zope itself and provides a high performance interface to all your ODBC data sources, using a single well-supported interface on Windows, Linux, Mac OS X, FreeBSD and other platforms. This makes it ideal for deployment in ZEO Clusters and Zope hosting environments where stability and high performance are a top priority, establishing an excellent basis and scalable solution for your Plone CMS. Product page: http://www.egenix.com/products/zope/mxODBCZopeDA/ NEWS We are pleased to announce our new version 2.2.0 of the mxODBC Zope/Plone Database Adapter product. In this release, we have upgraded the adapter to mxODBC 3.3.1 and added compatibility with the latest Plone releases and ODBC drivers/managers. Feature Enhancements * Compatible with Plone 4.0 - 4.3. * Compatible with the upcoming Plone 5.0. Enhanced Support for Stored Procedures * Added documentation on how to call stored procedures from Plone / Zope. * Added support for input, output and input/output parameters to the .callproc() method for calling stored procedures. * Added documentation on how to use External Methods to access and use the mxODBC Zope DA connection objects. Fast Cursor Types * Switched to forward-only cursor types for all database backends, since this provides a much better performance for MS SQL Server and IBM DB2 drivers. Updated mxODBC API * Access all new features from the updated mxODBC 3.3 API via the DatabaseConnect.connection attribute or by importing the mxODBC API directly. Please see the mxODBC 3.3.0 and 3.3.1 release announcements for full details. Easier Installation * ThreadLock egg distribution provided by eGenix to avoid having a compiler installed for the installation buildout run. Please see our ThreadLock distribution release announcement for details: http://www.egenix.com/company/news/eGenix-ThreadLock-Distribution-2.13.0.1.html For the full list of features, please see the mxODBC Zope DA feature list: http://www.egenix.com/products/zope/mxODBCZopeDA/#Features Driver Compatibility Enhancements - * ODBC driver compatibility updated. By upgrading to the latest mxODBC 3.3 release, we are bringing all compatibility enhancements added to mxODBC 3.3 to the mxODBC Zope DA. This includes updated support for Oracle, MS SQL Server, Sybase ASE, IBM DB2, PostgreSQL and MySQL. See the mxODBC 3.3.0 and 3.3.1 release announcements for full details: http://www.egenix.com/company/news/eGenix-mxODBC-3.3.0-GA.html http://www.egenix.com/company/news/eGenix-mxODBC-3.3.1-GA.html * ODBC manager compatibility updated. Built against unixODBC 2.3.2, iODBC 3.52.8, DataDirect 7.1.2 on Unix. Built against the MS Windows Manager ODBC on Windows. Built against iODBC 3.52.8 on Mac OS X. The complete list of changes is available on the mxODBC Zope DA changelog page. http://www.egenix.com/products/zope/mxODBCZopeDA/changelog.html UPGRADING Users are encouraged to upgrade to this latest mxODBC Plone/Zope Database Adapter release to benefit from the new features and updated ODBC driver support. We have taken special care not to introduce backwards incompatible changes, making the upgrade experience as smooth as possible. For major and minor upgrade purchases, we will give out 20% discount coupons going from mxODBC Zope DA 1.x to 2.2 and 50% coupons for upgrades from mxODBC 2.x to 2.2. After upgrade, use of the original license from which you upgraded is no longer permitted. Patch level upgrades (e.g. 2.2.0 to 2.2.1) are always free of charge. Please contact the eGenix.com Sales Team with your existing license serials for details for an upgrade discount coupon. If you want to try the new release before purchase, you can request 30-day evaluation licenses by
[Zope-DB] ANN: eGenix mxODBC Zope/Plone Database Adapter 2.1.2
ANNOUNCEMENT mxODBC Zope/Plone Database Adapter Version 2.1.2 for Zope and the Plone CMS Available for Plone 4.0, 4.1 and 4.2, Zope 2.12 and 2.13, on Windows, Linux, Mac OS X, FreeBSD and other platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.1.2-GA.html INTRODUCTION The eGenix mxODBC Zope DA allows you to easily connect your Zope or Plone CMS installation to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix product mxODBC and the flexibility of the ODBC standard as middle-tier architecture. The mxODBC Zope Database Adapter is highly portable, just like Zope itself and provides a high performance interface to all your ODBC data sources, using a single well-supported interface on Windows, Linux, Mac OS X, FreeBSD and other platforms. This makes it ideal for deployment in ZEO Clusters and Zope hosting environments where stability and high performance are a top priority, establishing an excellent basis and scalable solution for your Plone CMS. Product page: http://www.egenix.com/products/zope/mxODBCZopeDA/ NEWS We are pleased to announce the new version 2.1.2 of our mxODBC Zope/Plone Database Adapter product. Compatibility Enhancements -- * Added a work-around for a regression in Python 2.7.4 that results in a segfault when exiting Zope/Plone after loading the mxODBC Zope DA. The regression will be fixed in Python 2.7.5, but we don't want to expose our users to segfaults, so added a work-around. See http://bugs.python.org/issue17703 for the bug ticket. * Upgraded the underlying mxODBC library to version 3.2.3. Please see the mxODBC 3.2.3 release announcement for additional details: http://www.egenix.com/company/news/eGenix-mxODBC-3.2.3-GA.html Driver Compatibility * Please also see the mxODBC Zope DA 2.1.1 announcement for an important new feature which allows to dramatically increase the fetch performance when working with MS SQL Server and IBM DB2 databases. http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.1.1-GA.html For the full set of changes please check the change log: http://www.egenix.com/products/zope/mxODBCZopeDA/changelog.html FEATURES Version 2.1.0 of our mxODBC Zope/Plone Database Adapter product was released on 2012-09-18. Please see the announcement for highlights of the 2.1 release: http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.1.0-GA.html For the full set of features mxODBC Zope DA has to offer, please see: http://www.egenix.com/products/zope/mxODBCZopeDA/#Features UPGRADING Users are encouraged to upgrade to this latest mxODBC Zope/Plone DA release to benefit from the new features and updated ODBC driver support. We have taken special care not to introduce backwards incompatible changes, making the upgrade experience as smooth as possible. As always, patch level upgrades (e.g. from 2.1.0 to 2.1.2) are free of charge. The licenses you have purchased for 2.1 will continue to work with this new release. For major and minor upgrade purchases, we will give out 20% discount coupons going from mxODBC Zope DA 1.x to 2.1 and 50% coupons for upgrades from mxODBC 2.x to 2.1. After upgrade, use of the original license from which you upgraded is no longer permitted. Please contact the eGenix.com Sales Team with your existing license serials for details for an upgrade discount coupon. If you want to try the new release before purchase, you can request 30-day evaluation licenses by visiting our web-site or writing to sa...@egenix.com, stating your name (or the name of the company) and the number of evaluation licenses that you need. ___ SUPPORT Commercial support for this product is available from eGenix.com. Please see http://www.egenix.com/services/support/ for details about our support offerings. MORE INFORMATION For more information on the mxODBC Zope Database Adapter, licensing and download instructions, please visit our web-site: http://www.egenix.com/products/zope/mxODBCZopeDA/ You can buy mxODBC Zope DA licenses online from the eGenix.com shop at: http://shop.egenix.com/ About Python (http://www.python.org/): Python is an object-oriented Open
[Zope-DB] ANN: eGenix mxODBC Zope/Plone Database Adapter 2.1.1
ANNOUNCEMENT mxODBC Zope/Plone Database Adapter Version 2.1.1 for Zope and the Plone CMS Available for Plone 4.0, 4.1 and 4.2, Zope 2.12 and 2.13, on Windows, Linux, Mac OS X, FreeBSD and other platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.1.1-GA.html INTRODUCTION The eGenix mxODBC Zope DA allows you to easily connect your Zope or Plone CMS installation to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix product mxODBC and the flexibility of the ODBC standard as middle-tier architecture. The mxODBC Zope Database Adapter is highly portable, just like Zope itself and provides a high performance interface to all your ODBC data sources, using a single well-supported interface on Windows, Linux, Mac OS X, FreeBSD and other platforms. This makes it ideal for deployment in ZEO Clusters and Zope hosting environments where stability and high performance are a top priority, establishing an excellent basis and scalable solution for your Plone CMS. Product page: http://www.egenix.com/products/zope/mxODBCZopeDA/ NEWS We are pleased to announce the new version 2.1.1 of our mxODBC Zope/Plone Database Adapter product. Feature Enhancements * Added a new connection property ODBC cursor type which allows easily adjusting the ODBC cursor type to be used for mxODBC Zope DA connection objects. This new property allows enhancing the performance of the adapter significantly, when using it with MS SQL Server or IBM DB2 database backends. Please see below for details. Driver Compatibility * MS SQL Server performance can now be much enhanced, and increased to levels beyond that of previous mxODBC Zope DA releases, by adjusting the connection ODBC cursor type to Forward only cursors. The performance increase compared to mxODBC Zope DA 2.1.0 is enormous: from 2-3x faster executes/fetches for average queries, up to 300x faster for simple cases. In mxODBC Zope DA 2.2, we will switch to using Forward only cursors per default for all database backends. * IBM DB2 can benefit from the same performance enhancements using Forward only cursors. The effect is a lot smaller, but still noticeable: up to 2x faster executes/fetches with forward-only cursors, compared to mxODBC Zope DA 2.1.0. * Added documentation to explain the different cursor types, compatibility with different database backends and effects on performance. Fixes - * Fixed the installation instructions to be more generic and easily adaptable to Plone and Zope installations on both Windows and Unix platforms. For the full set of changes please check the change log: http://www.egenix.com/products/zope/mxODBCZopeDA/changelog.html FEATURES Version 2.1.0 of our mxODBC Zope/Plone Database Adapter product was released on 2012-09-18. Please see the full announcement for highlights of the 2.1 release: http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.1.0-GA.html For the full set of features mxODBC has to offer, please see: http://www.egenix.com/products/zope/mxODBCZopeDA/#Features UPGRADING Users are encouraged to upgrade to this latest mxODBC Zope/Plone DA release to benefit from the new features and updated ODBC driver support. We have taken special care not to introduce backwards incompatible changes, making the upgrade experience as smooth as possible. As always, patch level upgrades (e.g. from 2.1.0 to 2.1.1) are free of charge. The licenses you have purchased for 2.1 will continue to work with this new release. For major and minor upgrade purchases, we will give out 20% discount coupons going from mxODBC Zope DA 1.x to 2.1 and 50% coupons for upgrades from mxODBC 2.x to 2.1. After upgrade, use of the original license from which you upgraded is no longer permitted. Please contact the eGenix.com Sales Team with your existing license serials for details for an upgrade discount coupon. If you want to try the new release before purchace, you can request 30-day evaluation licenses by visiting our web-site or writing to sa...@egenix.com, stating your name (or the name of the company) and the number of eval licenses that you need. ___ SUPPORT Commercial support for this product is available from eGenix.com.
[Zope-DB] ANN: eGenix mxODBC - Python ODBC Database Interface 3.1.2
ANNOUNCING eGenix.com mxODBC - Python ODBC Database Interface Version 3.1.2 mxODBC is our commercially supported Python extension providing ODBC database connectivity to Python applications on Windows, Mac OS X, Unix and BSD platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-3.1.2-GA.html INTRODUCTION mxODBC provides an easy-to-use, high-performance, reliable and robust Python interface to ODBC compatible databases such as MS SQL Server, MS Access, Oracle Database, IBM DB2 and Informix , Sybase ASE and Sybase Anywhere, MySQL, PostgreSQL, SAP MaxDB and many more: http://www.egenix.com/products/python/mxODBC/ The eGenix mxODBC - Python ODBC Database Interface product is a commercial extension to our open-source eGenix mx Base Distribution: http://www.egenix.com/products/python/mxBase/ NEWS mxODBC 3.1.2 Update --- The 3.1.2 release of our mxODBC is the latest release of our popular Python ODBC Interface. The new patch-level version includes a few important fixes: * Fixed a compatibility problem with Python 2.7's distutils that was introduced in Python 2.7.3 * Improved compatibility of the mxODBC native Unicode string format handling with Unix ODBC drivers when running UCS4 builds of Python. Licenses for mxODBC 3.1.x remain valid for mxODBC 3.1.2 as well. Support for MS SQL Server Native Client for Linux - The above changes allows using the NVARCHAR and NCHAR types of SQL Server with the *new MS SQL Server Native Client for Linux* with UCS4 Python builds. UCS2 Python builds don't exhibit this issue. The new driver has proven to be much more feature complete than the FreeTDS ODBC driver, so it's definitely worth a try. Note that the MS driver currently has an issue with Unicode connection strings which causes stack corruption. Please don't use Unicode connection strings with the MS SQL Server Native Client for Linux driver, since there's no way we can work around this problem: we only know the type of driver after connection and then it's already too late. You can download the new MS SQL Server Native Client for Linux from: http://www.microsoft.com/download/en/details.aspx?id=28160 Windows x64 and eGenix mx Base 3.2 -- With mxODBC 3.1.1 we had already introduced compatibility with our current mx Base 3.2 release in order to be able to support the Windows x64 platform. If you are currently using the combinations mxODBC 3.1.0 + mx Base 3.1, please consider upgrading to our latest releases mxODBC 3.1 + mx Base 3.2. eGenix mx Base 3.2 is available from our product page: http://www.egenix.com/products/python/mxBase/ mxODBC 3.1 Release Highlights - * We've added Python 2.7 support and builds for all platforms. * mxODBC 3.1 adds native support for the Windows 64-bit platforms as well as the Mac OS X 10.6 (Snow Leopard) 64-bit builds of Python. * mxODBC now fully supports the Oracle Instant Client ODBC driver. * We have updated the support for the latest IBM DB2 9.7 ODBC drivers and enhanced compatibility of mxODBC with the MS SQL Server Native Client ODBC driver on Windows and the Sybase ASE 15 ODBC drivers on Unix. * mxODBC 3.1 adds support for large-scale data warehouse databases Netezza and Teradata. * In addition to the Windows, Mac OS X, iODBC and unixODBC ODBC driver managers, we now also include support for the DataDirect ODBC manager. * The 64-bit support on Unix platforms was updated to support the new unixODBC 2.3.0 version. * We've improved the documentation on how to connect to various popular databases and now include many tips tricks for each database/driver. * The Python 2.7 memoryview object is now supported as binary data container. * We have simplified handling of database warnings using a new customizable .warningformat attribute. * The catalog methods now accept both Unicode and 8-bit strings as parameters. * You can now select whether to use ANSI (8-bit) or Unicode ODBC APIs in the ODBC drivers, removing unnecessary data conversions and enhancing ODBC driver compatibility. For the full set of changes please check the mxODBC change log: http://www.egenix.com/products/python/mxODBC/changelog.html Feature Highlights -- * Python Database API 2.0 Compliance: the mxODBC API is fully Python DB-API 2.0 compatible and implements a large number of powerful extensions.
[Zope-DB] ANN: eGenix mxODBC Zope Database Adapter 2.0.2
ANNOUNCEMENT mxODBC Zope Database Adapter Version 2.0.2 for Zope and the Plone CMS Available for Zope 2.10 and later on Windows, Linux, Mac OS X, FreeBSD and other platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Zope-DA-2.0.2-GA.html INTRODUCTION The eGenix mxODBC Zope Database Adapter allows you to easily connect your Zope or Plone installation to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix product mxODBC and the flexibility of the ODBC standard as middle-tier architecture. The mxODBC Zope Database Adapter is highly portable, just like Zope itself and provides a high performance interface to all your ODBC data sources, using a single well-supported interface on Windows, Linux, Mac OS X, FreeBSD and other platforms. This makes it ideal for deployment in ZEO Clusters and Zope hosting environments where stability and high performance are a top priority, establishing an excellent basis and scalable solution for your Plone CMS. Product page: http://www.egenix.com/products/zope/mxODBCZopeDA/ NEWS We are pleased to announce a new version 2.0.2 of our mxODBC Zope DA product. With the patch level 2.0.2 release we have updated the integrated mxODBC Python Extension to the latest 3.1.1 release, which includes a number of important workarounds for these ODBC drivers: * Oracle 10gR1 and 10gR2 * Oracle 11gR1 and 11gR2 * Teradata 13 * Netezza Due to popular demand, we have also added instructions on how to install mxODBC Zope DA 2.0 with Plone 4.1 and Zope 2.13 - even though this combination is not officially supported by the mxODBC Zope DA 2.0 series: http://www.egenix.com/products/zope/mxODBCZopeDA/#Installation UPGRADING Licenses purchased for version 2.0.x of the mxODBC Zope DA will continue to work with the 2.0.2 patch level release. Licenses purchased for version 1.0.x of the mxODBC Zope DA will not work with version 2.0. More information about available licenses is available on the product page: http://www.egenix.com/products/zope/mxODBCZopeDA/#Licensing Compared to the popular mxODBC Zope DA 1.0, version 2.0 offers these enhancements: * Includes mxODBC 3.1 with updated support for many current ODBC drivers, giving you more portability and features for a wider range of database backends. * Mac OS X 10.6 (Snow Leopard) support. * Plone 3.2, 3.3, 4.0 support. Plone 4.1 works as well. * Zope 2.10, 2.11, 2.12 support. Zope 2.13 works as well. * Python 2.4 - 2.6 support. * Zero maintenance support to automatically reconnect the Zope connection after a network or database problem. * More flexible Unicode support with options to work with pure Unicode, plain strings or mixed setups - even for databases that don't support Unicode * Automatic and transparent text encoding and decoding * More flexible date/time support including options to work with Python datetime objects, mxDateTime, strings or tuples * New decimal support to have the Zope DA return decimal column values using Python's decimal objects. * Fully eggified to simplify easy_install and zc.buildout based installation MORE INFORMATION For more information on the mxODBC Zope Database Adapter, licensing and download instructions, please visit our web-site: http://www.egenix.com/products/zope/mxODBCZopeDA/ You can buy mxODBC Zope DA licenses online from the eGenix.com shop at: http://shop.egenix.com/ Thank you, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Feb 09 2012) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try our new mxODBC.Connect Python Database Interface for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ ___ Zope-DB mailing list Zope-DB@zope.org https://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] SQLAlchemy
Chris Withers wrote: M.-A. Lemburg wrote: If you want yet another abstraction layer between your code and the database, that's the way to go, yes :-) SA does provides a general abstraction layer, not the application specific one I was talking about. To be honest, I'd prefer to use a powerful, lean, well tested abstraction layer that's tested by a lot more people than just me rather than hacking up a specific abstraction layer on each and every project ;-) That's not what I'm talking about. Each application has its own database requirements and it's common practice to centralize this functionality into an application specific database abstraction layer. You can, of course, have this layer use SA to add another layer of abstraction between the application database layer and the database, if you feel uncomfortable with SQL, or want to abstract the queries from their database specific SQL implementation, e.g. in order to support more than one database backend. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Aug 27 2010) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ 2010-08-19: Released mxODBC 3.1.0 http://python.egenix.com/ 2010-09-15: DZUG Tagung, Dresden, Germany 18 days to go ::: Try our new mxODBC.Connect Python Database Interface for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ ___ Zope-DB mailing list Zope-DB@zope.org https://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] ORMs (Zope-DB Digest, Vol 72, Issue 1)
Richard Harley wrote: Please can someone explain why ORM is better than speaking directly to the database? Isn't this just adding another layer of complexity which in huge databases is certainly not needed. It really all depends on what your needs are. This is my experience: If you just need to work with a simple database schema, change schemas frequently, have straight-forward queries and don't like or know SQL, you're probably better off with an ORM hiding SQL away from you. If you're working with more complex schemas and queries, need to care about execution performance, want to use advanced database techniques and can manage SQL (which really isn't all that difficult), then you're better off writing straight SQL. As for managing SQL statements and queries, this is usually best done using an application specific thin abstraction layer. That way you keep the queries in one place and can easily make changes, if required. Whether ZSQLMethods are a good way of implementing such a layer is questionable - having those methods in the ZODB makes changes difficult to implement. OTOH, they are well integrated into Zope's object database and very easy to setup and use. I'd suggest to use a Python class as abstraction layer and have that use a Zope database connection object(s) for executing and running the queries within a standard Zope transaction. This approach then also lets you benefit from the better performance and more security you get from using standard DB-API binding parameters. ZSQLMethods only support inlining parameters into the SQL statements which can result in SQL injection problems as well as slower performance due to the fact that you're making it harder for the database to cache access plans. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Aug 26 2010) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try our new mxODBC.Connect Python Database Interface for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ ___ Zope-DB mailing list Zope-DB@zope.org https://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] SQLAlchemy
Chris Withers wrote: M.-A. Lemburg wrote: I'd suggest to use a Python class as abstraction layer Sounds like an ORM to me ;-) No, there's no object-relational mapping being done, only interfacing between the data used by the application and the schema you have in the database. As nice side-effect, you can also add business logic to the abstraction layer, optimize queries to partly run in Python and in SQL, reorder your SQL to tweak the database optimizer into writing good access plans, etc. Seriously, SQLAlchemy lets you do all of the things you're worried about, performance and flexibility wise, as well as map your sql onto objects (or not, if you don't actually want objects!) with ease... Hmm, I guess what I'm actually saying is that ORM or not is one choice, either way, I'd *strongly* recommend using SQLAlchemy rather than trying to roll your own abstraction layer of any sort. If you want yet another abstraction layer between your code and the database, that's the way to go, yes :-) SA does provides a general abstraction layer, not the application specific one I was talking about. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Aug 26 2010) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try our new mxODBC.Connect Python Database Interface for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 http://www.egenix.com/company/contact/ ___ Zope-DB mailing list Zope-DB@zope.org https://mail.zope.org/mailman/listinfo/zope-db
[Zope-DB] ANN: eGenix mxODBC Connect 1.0.1 - Python Database Interface
ANNOUNCING eGenix.com mxODBC Connect Python Database Interface Version 1.0.1 Our new client-server product for connecting Python applications to relational databases - from all major platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Connect-1.0.1-GA.html INTRODUCTION The mxODBC Connect Database Interface for Python allows users to easily connect Python applications to all major databases on the market today in a highly portable and convenient way. Unlike our mxODBC Python extension, mxODBC Connect is designed as client-server application, so you no longer need to find production quality ODBC drivers for all the platforms you target with your Python application. Instead you use an easy to install Python client library which connects directly to the mxODBC Connect database server over the network. This makes mxODBC Connect the ideal basis for writing cross-platform database programs and utilities in Python, especially if you run applications that need to communicate with databases such as MS SQL Server and MS Access, Oracle Database, IBM DB2 and Informix, Sybase ASE and Sybase Anywhere, MySQL, PostgreSQL, SAP MaxDB and many more, that run on Windows or Linux machines. By removing the need to install and configure ODBC drivers on the client side, mxODBC Connect greatly simplifies setup and configuration of database driven client applications, while at the same time making the network communication between client and database server more efficient and more secure. For more information, please see the product page: http://www.egenix.com/products/python/mxODBCConnect/ NEWS mxODBC Connect 1.0.1 is a patch-level release of our new mxODBC Connect product. * More Robust We have made the client and server more robust in case of communication failures. Even if the client applications fail to shutdown the server connection before exiting, the server will free up resources used by the client on the server side and rollback transactions as necessary. * More Platform Support With the 1.0.1 release we are also providing much better platform support for the mxODBC Connect Client: we have fixed a problem in 1.0.0 that prevented the installation of the pre-built clients on non-Linux systems. The mxODBC Connect Client can now be installed on most platforms supported by Python, since it is written in a platform independent, portable way. The pre-built archives also make it possible to integrate the clients into build system such as buildout (used in Zope and Plone) or other distutils-based deployment systems. * Ideal for Building Bridges As a result, connecting from e.g. Mac OS X to an SQL Server database has never been easier. You can even keep the data sources you already have configured on your Windows machine and connect to them as if your application were running on the database server itself. UPGRADING You are encouraged to upgrade to this latest mxODBC Connect release. When upgrading, please always upgrade both the server and the client installations to the same version - even for patch level releases. Customers who have purchased mxODBC Connect 1.0 licenses can download and upgrade their existing installations without having to purchase new licenses or upgrades. The licenses will continue to work with version 1.0.1. Users of our stand-alone mxODBC product will have to purchase new licenses from our online shop in order to use mxODBC Connect. You can request 30-day evaluation licenses by visiting our web-site or writing to sa...@egenix.com, stating your name (or the name of the company) and the number of eval licenses that you need. http://www.egenix.com/products/python/mxODBCConnect/#Evaluation DOWNLOADS The download archives as well as instructions for installation and configuration of the product can be found on the product page: http://www.egenix.com/products/python/mxODBCConnect/ Evaluation licenses for the server part are available free of charge: http://www.egenix.com/products/python/mxODBCConnect/#Evaluation The client part of mxODBC Connect is always free of charge. ___ SUPPORT Commercial support for this product is available from eGenix.com. Please see http://www.egenix.com/services/support/ for details about our support offerings. Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Mar 19 2009)
[Zope-DB] ANN: eGenix mxODBC Connect - Python Database Interface 1.0.0
ANNOUNCING eGenix.com mxODBC Connect Python Database Interface Version 1.0.0 Our new client-server product for connecting Python applications to relational databases - from all major platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Connect-1.0.0-GA.html INTRODUCTION The mxODBC Connect Database Interface for Python allows users to easily connect Python applications to all major databases on the market today in a highly portable and convenient way. Unlike our mxODBC Python extension, mxODBC Connect is designed as client-server application, so you no longer need to find production quality ODBC drivers for all the platforms you target with your Python application. Instead you use an easy to install Python client library which connects directly to the mxODBC Connect database server over the network. This makes mxODBC Connect the ideal basis for writing cross-platform database programs and utilities in Python, especially if you run applications that need to communicate with databases such as MS SQL Server and MS Access, Oracle Database, IBM DB2 and Informix, Sybase ASE and Sybase Anywhere, MySQL, PostgreSQL, SAP MaxDB and many more, that run on Windows or Linux machines. By removing the need to install and configure ODBC drivers on the client side, mxODBC Connect greatly simplifies setup and configuration of database driven client applications, while at the same time making the network communication between client and database server more efficient and more secure. For more information, please see the product page: http://www.egenix.com/products/python/mxODBCConnect/ NEWS mxODBC Connect 1.0.0 is the first general availability release of our new mxODBC Connect product. With this release we have further improved the performance and round-trip times of the mxODBC Connect network layer even more. We are now able to achieve a *more than 10 times better performance* for a typical multi-tier application that runs on Linux and connects to a MS SQL Server database running on a Windows host, compared to the same application using mxODBC and the FreeTDS ODBC driver. Thanks to everyone who participated in the public beta ! DOWNLOADS The download archives as well as instructions for installation and configuration of the product can be found on the product page: http://www.egenix.com/products/python/mxODBCConnect/ Evaluation licenses for the server part are available free of charge: http://www.egenix.com/products/python/mxODBCConnect/#Evaluation The client part of mxODBC Connect is always free of charge. ___ SUPPORT Commercial support for this product is available from eGenix.com. Please see http://www.egenix.com/services/support/ for details about our support offerings. Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Dec 02 2008) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ 2008-12-02: Released mxODBC.Connect 1.0.0 http://python.egenix.com/ Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
[Zope-DB] ANN: eGenix mxODBC Connect Database Interface for Python 0.9.1 (beta)
ANNOUNCING eGenix.com mxODBC Connect Database Interface for Python Version 0.9.1 (beta) Our new client-server product for connecting Python applications to relational databases - on all major platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Connect-0.9.1-beta.html INTRODUCTION The mxODBC Connect Database Interface for Python allows users to easily connect Python applications to all major databases on the market today in a highly portable and convenient way. This makes mxODBC Connect the ideal basis for writing cross-platform database programs and utilities in Python. mxODBC Connect extends our eGenix mx Python Extension series with a new client-server based product, that removes the need to install and configure ODBC drivers on the client side. This greatly simplifies setup and configuration of database driven client applications, while at the same time making the network communication between client and database server more efficient and more secure. * About Python: Python is an object-oriented Open Source programming language which runs on all modern platforms (http://www.python.org/). By integrating ease-of-use, clarity in coding, enterprise application connectivity and rapid application design, Python establishes an ideal programming platform for todays IT challenges. * About eGenix: eGenix is a consulting and software product company focused on providing professional quality services and products to Python users and developers (http://www.egenix.com/). HOW IT WORKS mxODBC Connect consists of two parts: a server installation which typically runs directly on the database server and a client Python package which is installed on the client machine that runs the Python application. The server part uses our high-performance database adapter mxODBC to connect to the database server. The client package communicates with the server part over a TCP/IP network, optionally using SSL encryption, advanced authentication and access controls - a feature that many database drivers fail to deliver. By separating the client application database interface from the server and using mxODBC Connect, you gain several benefits: * high portability and flexibility * centralized configuration and administration * added security * automatic fail-over * scalability * lower costs For more information, please have a look at the product page: http://www.egenix.com/products/python/mxODBCConnect/ NEWS mxODBC Connect 0.9 is a public beta release of our new mxODBC Connect product. If you would like to participate in the beta, please see our beta program page: http://www.egenix.com/products/python/mxODBCConnect/beta.html *SPECIAL OFFER* In order to make participation in the beta program more interesting for our users, we will be giving out *free discount coupons* to all participants who report back bugs in the product. DOWNLOADS The download archives as well as instructions for installation and configuration of the product can be found on the product page: http://www.egenix.com/products/python/mxODBCConnect/ ___ SUPPORT Commercial support for this product is available from eGenix.com. Please see http://www.egenix.com/services/support/ for details about our support offerings. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jun 16 2008) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ 2008-07-07: EuroPython 2008, Vilnius, Lithuania20 days to go Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] DCOracle2 installation, I'm missing header files
On 2008-04-04 01:38, David Durham, Jr. wrote: On Thu, Apr 3, 2008 at 6:09 PM, Chris Withers [EMAIL PROTECTED] wrote: David Durham, Jr. wrote: Anyone spot what I'm doing wrong? You're using DCOracle2 instead of cxOracle ;-) http://sourceforge.net/projects/cx-oracle/ Oh, ok. Is there a Zope DB adapter for cxOracle? If you're looking for a stable Zope DA interface to Oracle, you might want to try our mxODBC Zope DA: http://www.egenix.com/products/zope/mxODBCZopeDA/ You can use it with the Oracle Instant Client: http://www.oracle.com/technology/tech/oci/instantclient/index.html (be sure to download the ODBC supplement) or the Oracle client that came with your Oracle DB. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, May 13 2008) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
[Zope-DB] Re: Floating point errors
On 2008-02-05 08:05, siribu wrote: Hi, well, it worked testing in Python using the eGenix API even without setting the NLS_NUMERIC_CHARACTERS explicitly. Thus, I assume that the ODBC interface toward Python should be working automatically using default settings. - thus I am guessing that it might be Zope that does not find the right environment variable. Tell me if I'm wrong. Also, it is worth noting that I have converted to a Norwegian character set, whereas in http://www.osdir.com/ml/web.zope.database/2003-01/msg00036.html they are converting to a German character set. Might have something to do with reproducing the error. The only area where the locale for numbers could be important is when converting floating point numbers to floats, e.g. in Germany you write 3,141592655 (using , as decimal point). In most English speaking countries this is written as 3.141592655 (using . as decimal point). The default ANSI C setting uses the dot as decimal point. Now if some routine in the stack relies on this string to float conversion and uses the wrong decimal point setting, you end up with a wrong floating point value. In any case: Thanks for sharing your findings. Regards, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Feb 05 2008) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 -su *On Mon Feb 4 11:34 , M.-A. Lemburg sent: * On 2008-02-04 08:19, siribu wrote: Hi, I found the a solution to the problem, it cannot be done just by Leave scale 0 floats untouched ? which I tried, but also the Oracle parameter NLS_NUMERIC_CHARACTERS needed to be set explicitly. See http://www.osdir.com/ml/web.zope.database/2003-01/msg00036.html. http://epost.start.no/mail/parse.pl?redirect=http://www.osdir.com/ml/web.zope.database/2003-01/msg00036.html. That solved things for me. Anyway, thanks Marc-Andre :-) You're welcome. Could you explain why you had to set the NLS_NUMERIC_CHARACTERS variable ? Is this needed for the ODBC driver to convert numbers to and from strings correctly ? *On Sun Feb 3 12:37 , M.-A. Lemburg sent: * On 2008-01-23 14:35, siribu wrote: Hi, I have got a problem: accessing an Oracle 10g database, whenever I ask for floats from a Zope Z SQL method, they are automatically converted to integers, simply dropping the decimal numbers. I am using Zope 2.10.4-final with Python 2.4.4 running on a Linux2 OS. Furthermore, I am using UnixODBC with Easysoftâ€^(TM)s ODBC-Oracle driver together with eGenix *mxODBC Zope DA*. There's a connection option Leave scale 0 floats untouched ? to switch this off. The truncation to integers is done because some database drivers always return numbers as floats - even integers. Zope would then display these as floats (without additional formatting), which may not look right to the user. Running iSQL on the server or even utilizing the mxODBC Zope DA driver directly in Python works well without problems. The error logs for the ODBC contained no sign or errors. Neither did I get any response when I ran Event Log Manager in Zope. I could not find anything in syslog. Any clues on how to solve this? See above: just switch on the option in the connection properties. - Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Feb 03 2008) Python/Zope Consulting and Support ... http://www.egenix.com/ http://epost.start.no/mail/parse.pl?redirect=http://www.egenix.com/ http://epost.start.no/mail/parse.pl\?redirect=http://www.egenix.com/ http://epost.start.no/mail/parse.pl?redirect=http://epost.start.no/mail/parse.pl%3Fredirect%3Dhttp%253A%252F%252Fwww.egenix.com%252F mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ http://epost.start.no/mail/parse.pl?redirect=http://zope.egenix.com/ http://epost.start.no/mail/parse.pl\?redirect=http://zope.egenix.com/ http://epost.start.no/mail
[Zope-DB] Re: Floating point errors
On 2008-02-04 08:19, siribu wrote: Hi, I found the a solution to the problem, it cannot be done just by Leave scale 0 floats untouched ? which I tried, but also the Oracle parameter NLS_NUMERIC_CHARACTERS needed to be set explicitly. See http://www.osdir.com/ml/web.zope.database/2003-01/msg00036.html. That solved things for me. Anyway, thanks Marc-Andre :-) You're welcome. Could you explain why you had to set the NLS_NUMERIC_CHARACTERS variable ? Is this needed for the ODBC driver to convert numbers to and from strings correctly ? *On Sun Feb 3 12:37 , M.-A. Lemburg sent: * On 2008-01-23 14:35, siribu wrote: Hi, I have got a problem: accessing an Oracle 10g database, whenever I ask for floats from a Zope Z SQL method, they are automatically converted to integers, simply dropping the decimal numbers. I am using Zope 2.10.4-final with Python 2.4.4 running on a Linux2 OS. Furthermore, I am using UnixODBC with Easysoftâ€^(TM)s ODBC-Oracle driver together with eGenix *mxODBC Zope DA*. There's a connection option Leave scale 0 floats untouched ? to switch this off. The truncation to integers is done because some database drivers always return numbers as floats - even integers. Zope would then display these as floats (without additional formatting), which may not look right to the user. Running iSQL on the server or even utilizing the mxODBC Zope DA driver directly in Python works well without problems. The error logs for the ODBC contained no sign or errors. Neither did I get any response when I ran Event Log Manager in Zope. I could not find anything in syslog. Any clues on how to solve this? See above: just switch on the option in the connection properties. - Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Feb 03 2008) Python/Zope Consulting and Support ... http://www.egenix.com/ http://epost.start.no/mail/parse.pl?redirect=http%3A%2F%2Fwww.egenix.com%2F mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ http://epost.start.no/mail/parse.pl?redirect=http%3A%2F%2Fzope.egenix.com%2F mxODBC, mxDateTime, mxTextTools ... http://python.egenix.com/ http://epost.start.no/mail/parse.pl?redirect=http%3A%2F%2Fpython.egenix.com%2F Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 - Få din egen, gratis e-postadresse på Start.no http://www.start.no/ -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Feb 04 2008) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
[Zope-DB] ANN: eGenix mxODBC and mxODBC Zope DA on AIX 5.3 (and later)
ANNOUNCING eGenix.com mxODBC Database Interface eGenix.com mxODBC Zope Database Adapter for AIX 5.3 and later This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-on-AIX53-POWER5-GA.html eGenix mxODBC Distribution The eGenix mxODBC Distribution is a Python database interface add-on distribution for our eGenix mx Base Distribution. It comes with mxODBC, our universal ODBC database interface for Python. Customers who have purchased licenses for other platforms and wish to move their installation to AIX 5.3 (or later), can do so without having to buy a new license. The licenses will continue to work on the AIX platform. Users of mxODBC 2.0 will have to purchase new licenses from our online shop in order to upgrade to mxODBC 3.0. You can request 30-day evaluation licenses on the product page. Downloads - Please visit the eGenix mxODBC Distribution page for downloads, instructions on installation and documentation of the packages. http://www.egenix.com/products/python/mxODBC/ Note that in order to use the eGenix mxODBC Distribution you need to install the eGenix mx Base Distribution first. eGenix mxODBC Zope DA eGenix mxODBC Zope DA is our database interface for Zope and Plone. It is based on the mxODBC interface. Customers who have purchased licenses for other platforms and wish to move their installation to AIX 5.3 (or later), can do so without having to buy a new license. The licenses will continue to work on the AIX platform. You can request 30-day evaluation licenses on the product page. Downloads - Please visit the eGenix mxODBC Zope DA product page for downloads, instructions on installation and documentation of the packages. http://www.egenix.com/products/zope/mxODBCZopeDA/ More Information For more information on our products, licensing and download instructions, please write to [EMAIL PROTECTED] Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Nov 19 2007) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
[Zope-DB] ANN: eGenix mxODBC and mxODBC Zope DA on 64-bit FreeBSD
ANNOUNCING eGenix.com mxODBC Database Interface eGenix.com mxODBC Zope Database Adapter for 64-bit FreeBSD This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-on-FreeBSD-amd64-GA.html eGenix mxODBC Distribution The eGenix mxODBC Distribution is a Python database interface add-on distribution for our eGenix mx Base Distribution. It comes with mxODBC, our universal ODBC database interface for Python. Customers who have purchased licenses for other platforms and wish to move their installation to FreeBSD 64-bit, can do so without having to buy a new license. The licenses will continue to work on the 64-bit platform. Users of mxODBC 2.0 will have to purchase new licenses from our online shop in order to upgrade to mxODBC 3.0. You can request 30-day evaluation licenses on the product page. Downloads - Please visit the eGenix mxODBC Distribution page for downloads, instructions on installation and documentation of the packages. http://www.egenix.com/products/python/mxODBC/ Note that in order to use the eGenix mxODBC Distribution you need to install the eGenix mx Base Distribution first. eGenix mxODBC Zope DA eGenix mxODBC Zope DA is our database interface for Zope and Plone. It is based on the mxODBC interface. Customers who have purchased licenses for other platforms and wish to move their installation to FreeBSD 64-bit, can do so without having to buy a new license. The licenses will continue to work on the 64-bit platform. You can request 30-day evaluation licenses on the product page. Downloads - Please visit the eGenix mxODBC Zope DA product page for downloads, instructions on installation and documentation of the packages. http://www.egenix.com/products/zope/mxODBCZopeDA/ More Information For more information on our products, licensing and download instructions, please write to [EMAIL PROTECTED] Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Sep 12 2007) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ 2007-08-22: Released mxODBC 3.0.1 http://python.egenix.com/ Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
[Zope-DB] ANN: eGenix EuroPython 2007 Presentations Videos
eGenix EuroPython 2007 Presentations Videos eGenix is pleased to announce the immediate availability of PDF and Flash video versions of the presentations we gave at this years EuroPython 2007 conference in Vilnius. This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/EuroPython-2007-Presentations.html INTRODUCTION The EuroPython Conference is the one of the premier conferences for Python Zope users and developers. This year it was being held from the 9th to 11th July in Vilnius, Lithuania. eGenix was one of the founding members of the EuroPython conference team and played a major role in organizing the first EuroPython conference in the year 2002. Since then we have attended every EuroPython conference to meet up face-to-face with the people from the Python Zope communities and have given regular talks at these conferences. TALKS AT EUROPYTHON 2007 We gave the following two talks at the conference. The presentations are available for viewing and download from our Presentations and Talks section: http://www.egenix.com/library/presentations/ As special feature, we have added talk videos in addition to providing the slide PDFs. You can view the talks online if you have the Adobe Flash Player 8 or later installed. * Parsing Languages with mxTextTools mxTextTools comes with a high performance Tagging Engine for text and Unicode data which can be used to tokenize and parse languages. The resulting abstract syntax tree can then be hooked up to a generator to build a complete and fast compiler in pure Python. The talk gives a short introduction to the way the mxTextTools Tagging Engine works and how it can be used to build compilers. mxTextTools is an eGenix Open Source product available as part of the eGenix mx Base Distribution. * An introduction to working with relational databases from Zope Although Zope has been around for quite a while, it continues to find new users particularly amongst non-programmers who are looking for a way to work with existing data which is usually in some relational database (PostgreSQL, MySQL, MS SQL, Oracle, DB2, etc.). One of the reasons for this is that Zope provides an extremely powerful, yet secure, through-the-web programming environment. The presentation is directed towards new users and will provide a brief introduction by example into the Zope way of doing things. At the same time it highlights how working within Zope is automatic training in good programming methodology: data management is delegated to ZSQL methods, PythonScripts act as controllers and Zope Page Templates provide the views. Together they encourage modularity and reusability. The sample application and database are available for download. Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jul 26 2007) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ Try mxODBC.Zope.DA for Windows,Linux,Solaris,MacOSX for free ! eGenix.com Software, Skills and Services GmbH Pastor-Loeh-Str.48 D-40764 Langenfeld, Germany. CEO Dipl.-Math. Marc-Andre Lemburg Registered at Amtsgericht Duesseldorf: HRB 46611 ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
[Zope-DB] ANN: eGenix mx Base Distribution 3.0.0 (mxDateTime, mxTextTools, etc.)
ANNOUNCING eGenix.com mx Base Extension Package Version 3.0.0 Open Source Python extensions providing important and useful services for Python programmers. This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mx-Base-Distribution-3.0-GA.html ABOUT The eGenix.com mx Base Extensions for Python are a collection of professional quality software tools which enhance Python's usability in many important areas such as fast text searching, date/time processing and high speed data types. The tools have a proven record of being portable across many Unix and Windows platforms. You can write applications which use the tools on Windows and then run them on Unix platforms without change due to the consistent platform independent interfaces. All available packages have proven their stability and usefulness in many mission critical applications and various commercial settings all around the world. * About Python: Python is an object-oriented Open Source programming language which runs on all modern platforms (http://www.python.org/). By integrating ease-of-use, clarity in coding, enterprise application connectivity and rapid application design, Python establishes an ideal programming platform for todays IT challenges. * About eGenix: eGenix is a consulting and software product company focused on providing professional quality services and products to Python users and developers (http://www.egenix.com/). NEWS The 3.0 release of the eGenix mx Base Distributions comes with a huge number of enhancements, bug fixes and additions. Some highlights: * All mx Extensions have been ported to Python 2.5. * mxDateTime has support for working with Python's datetime module types, so you can use and combine both if necessary. The parser was enhanced to support even more formats and make it more reliable than ever before. * mxTextTools now fully supports Unicode, so you can parse Unicode data just as fast as you can 8-bit string data. The package also includes a tag table compiler and new jump target support to simplify working with tag tables. * mxURL and mxUID were previously released as part of our mx Experimental distribution. They have now been integrated into the base distribution, providing easy-to-use data types for common tasks in web programming. * We've switched from the old distutils wininst installer to the new MSI installer for the Windows Python 2.5 build. This gives you a lot more options for automatic installs, including unattended installs. See http://www.python.org/download/releases/2.5/msi/ for details. For a more detailed description of changes, please see the respective package documentation on our web-site. As always we are providing pre-compiled versions of the package for Windows, Linux, Mac OS X, FreeBSD and Solaris as well as sources which allow you to install the package on all other supported platforms. DOWNLOADS The download archives and instructions for installing the packages can be found on the eGenix mx Base Distribution page: http://www.egenix.com/products/python/mxBase/ UPGRADING Please note that the 2.0 series of the eGenix mx Base Distribution does not support Python 2.5 on 64-bit platforms due to the Py_ssize_t changes in the Python C API. You are encouraged to upgrade to the new 3.0 series, if you plan to deploy on 64-bit platforms and use Python 2.5 as basis for your applications. LICENSES COSTS The eGenix mx Base package is distributed under the eGenix.com Public License which is a CNRI Python License style Open Source license. You can use the package in both commercial and non-commercial settings without fee or charge. The package comes with full source code SUPPORT Commercial support for these packages is available from eGenix.com. Please see http://www.egenix.com/services/support/ for details about our support offerings. Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, May 10 2007) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ Try
[Zope-DB] ANN: eGenix mxODBC Distribution 3.0.0 (mxODBC Database Interface)
ANNOUNCING eGenix.com mxODBC Database Interface Version 3.0.0 Our commercially supported Python extension providing ODBC database connectivity to Python applications on Windows and Unix platforms This announcement is also available on our web-site for online reading: http://www.egenix.com/company/news/eGenix-mxODBC-Distribution-3.0-GA.html ABOUT The mxODBC Database Interface allows users to easily connect Python applications to just about any database on the market today - on both Windows and Unix platforms in a highly portable and convenient way. This makes mxODBC the ideal basis for writing cross-platform database programs and utilities in Python. mxODBC is included in the eGenix.com mxODBC Distribution for Python, a commercial part of the eGenix.com mx Extension Series, a collection of professional quality software tools which enhance Python's usability in many important areas such as ODBC database connectivity, fast text processing, date/time processing and web site programming. The package has proven its stability and usefulness in many mission critical applications and various commercial settings all around the world. * About Python: Python is an object-oriented Open Source programming language which runs on all modern platforms (http://www.python.org/). By integrating ease-of-use, clarity in coding, enterprise application connectivity and rapid application design, Python establishes an ideal programming platform for todays IT challenges. * About eGenix: eGenix is a consulting and software product company focused on providing professional quality services and products to Python users and developers (http://www.egenix.com/). NEWS mxODBC 3.0 has received a large number of enhancements and supports more ODBC drivers than ever. Some highlights: * mxODBC has been ported to Python 2.5. * We've worked a lot on the Unicode support and made it more robust, especially on Unix platforms where the ODBC Unicode support has stabilized over the last few years. You can now issue commands using Unicode and exchange Unicode data with the database in various configurable ways. * We've also added a methods to give you more control of the connections and cursors as well as the .callproc() method for calling stored procedures that mxODBC 2.0 was missing. * Multiple result sets via the .nextset() are also supported, so working with stored procedures should be a lot easier now. * Another highlight is the added support for Python's datetime module types and the option to use strings for date/time processing (e.g. to be able to use timezones in timestamps if that's supported by the database). * Python's decimal module is now supported as well and it's possible to configure mxODBC to return Decimal types for numeric values. * mxODBC 3.0 received full 64-bit support, so that you can run mxODBC (and all other mx Extensions) on e.g. AMD64 platforms. * We've switched from the old distutils wininst installer to the new MSI installer for the Windows Python 2.5 build. This gives you a lot more options for automatic installs, including unattended installs. See http://www.python.org/download/releases/2.5/msi/ for details. Note that in order to avoid confusion, we've decided to rename the eGenix.com mx Commercial Distribution to eGenix.com mxODBC Distribution with this release. The commercial distribution has always only contained the mxODBC package, so this was an obvious step to clarify things for our users. As always we are providing pre-compiled versions of the package for Windows, Linux, Mac OS X, FreeBSD and Solaris as well as sources which allow you to install the package on all other supported platforms. DOWNLOADS The download archives and instructions for installing the package can be found at: http://www.egenix.com/products/python/mxODBC/ IMPORTANT: In order to use the eGenix mx Commercial package you will first need to install the eGenix mx Base package which can be downloaded from here: http://www.egenix.com/products/python/mxBase/ UPGRADING Please note that mxODBC 2.0 does not support Python 2.5 on 64-bit platforms due to the Py_ssize_t changes in the Python C API. You are encouraged to upgrade to the new mxODBC 3.0 release, if you plan to deploy on 64-bit platforms and use Python 2.5 as basis for your applications. LICENSES COSTS This release
Re: [Zope-DB] sql query works in database connector but not in ZSQL method
On 2007-01-17 17:42, Charlie Clark wrote: Am 17.01.2007, 17:14 Uhr, schrieb robert rottermann [EMAIL PROTECTED]: If tried that, but somehow I did not get it rigth: questions: - - the first parameter is an integer, how do I force that? int(para) ? - - the second parameter is an out parameter, how do I specify that ? You don't, I think we don't support them currently. That's correct. You will have to wrap the stored procedure you're calling in another one that returns the data via a standard SELECT and then access the value using the result set. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jan 17 2007) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] Pitfall: mxODBCZopeDA and test runner in 2.9+
Paul Winkler wrote: If you have mxODBCZopeDA and are using it with zope 2.9 or higher, a word of warning: You *must* use the -k option to the test runner when running tests in your INSTANCE_HOME. Example: ./bin/zopectl test -k If you fail to use -k, the zope test runner will delete bytecode for all your products - including mxODBCZopeDA, which has no .py files to fall back on. Ouch. I'll investigate further - there might be a bug to file against zope.testing. Why does the test runner delete .pyc files in directories it doesn't own ? .pyc files only change if you upgrade to a new Python version, so there doesn't seem to be a need for removing them in the first place. Python is also smart enough to detect updated .py files and regenerate .pyc files from them automatically (.pyc files have a timestamp builtin). -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Oct 13 2006) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] Pitfall: mxODBCZopeDA and test runner in 2.9+
Chris Withers wrote: M.-A. Lemburg wrote: If you fail to use -k, the zope test runner will delete bytecode for all your products - including mxODBCZopeDA, which has no .py files to fall back on. Ouch. I'll investigate further - there might be a bug to file against zope.testing. Why does the test runner delete .pyc files in directories it doesn't own ? The common case used to be: 1. run tests in a checkout (generates .pyc's for each .py file imported) 2. svn up, which deletes a load of .py files 3. re-run tests, curse and swear that there are still .pyc files lying around that got imported, and you only noticed when your production environment broke, because you rebuild that out from scratch on upgrade ...so the autho-pyc-destructor was built ;-) Sounds like a developer setup :-) For those I do have a solution: chown root.zope .../Products/mxODBCZopeDA chmod 750 .../Products/mxODBCZopeDA (provided zope is the group of the Zope daemon) That way you prevent deletions in the product directory by any user other than root. I have to echo Jens' sentiments though: why not just ship .py files and be done with it? See my reply to Jens. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Oct 13 2006) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
[Zope-DB] ANN: eGenix mxODBC Zope Database Adapter 1.0.10 for Intel Mac OS X
ANNOUNCEMENT EGENIX.COM mxODBC Zope Database Adapter Version 1.0.10 Usable with Zope and the Plone CMS. Available for Zope 2.3 through 2.10 on Windows, Linux, Mac OS X, Solaris and FreeBSD INTRODUCTION The eGenix mxODBC Zope Database Adapter allows you to easily connect your Zope or Plone installation to just about any database backend on the market today, giving you the reliability of the commercially supported eGenix product mxODBC and the flexibility of the ODBC standard as middle-tier architecture. The mxODBC Zope Database Adapter is highly portable, just like Zope itself and provides a high performance interface to all your ODBC data sources, using a single well-supported interface on Windows, Linux, Mac OS X, Solaris and FreeBSD. This makes it ideal for deployment in ZEO Clusters and Zope hosting environments where stability and high performance are a top priority, establishing an excellent basis and scalable solution for your CMS. NEWS Our mxODBC Zope DA product is now available and supported on both Intel and PPC Mac OS X versions. UPGRADING If you have already bought mxODBC Zope DA 1.0.x licenses, you can use these license for the 1.0.10 version as well. There is no need to buy new licenses. The same is true for evaluation license users. MORE INFORMATION For more information on the mxODBC Zope Database Adapter, licensing and download instructions, please visit our web-site: http://zope.egenix.com/ You can buy mxODBC Zope DA licenses online from the eGenix.com shop at: http://shop.egenix.com/ Enjoy, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Sep 20 2006) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] Zope database connectivity
Matthew T. Kromer wrote: Basically, no. You could recode DA's to close the connection at the end of every transaction and reopen them on demand, but to the best of my knowledge none of the DAs work that way. Once a connection object opens its connection it stays open but in the object cache of that thread. This gives it both an indeterminate lifespan and a fair amount of isolation from other threads -- sadly, the thread that you're running your ZMI transaction on. The ZMI cant see what objects the other threads are using (well you actually CAN program that but -- dont! -- you'd most likely break Zope in a severe way without intending to) Most of the open buttons on database connections are pretty useless -- they just make the connection open early. Most DA's open a connection on demand. For Most read all because I don't know of one that DOESNT work that way. I'll correct that slightly: Zope DAs usually open the connection as soon as the connection object is loaded into memory, e.g. if you look at the folder contents containing the connection object. This is not the same as opening the connection on demand, since demand for a connection will only occur at the time you actually ask the connection object to execute a query by calling it. If a connection object only opens the connection if you actually run a query, that's connect on demand and the way we've implemented this feature in the mxODBC Zope DA. The connect on load which most other DAs implement can cause problems in some situations e.g. if the connection to the database is down or not available for some reason, but you still want to edit the connection object via the ZMI. Connect on demand also tends to save resources and plays well with connections that time out after a while. On Jul 13, 2006, at 4:41 AM, Jose Carlos Balderas Alberico wrote: Greetings. I'm having a problem with database connectors, and maybe you can give me a hand. Is there a way to manage the opening and closing of database connectors, apart from doing it from the zope management interface? By this I mean, I want to implement a Python script that checks wether a database connection is open or closed. If it's closed, I'll open it, all coded, without having to click the Open connection button. I haven't found info on this. Can you help me out with this? The DAs will usually have a method which implements this. The name of the method is DA-dependent, e.g. for the mxODBC Zope DA it's called .connect() or .lazy_connect() if you want to open the connection object in connect on demand mode. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Sep 20 2006) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] Warnings from mxODBC in 2.8.5
Chris Withers wrote: M.-A. Lemburg wrote: Well, given that in Zope 2.9.0 it also doesn't catch the following warning that you get on startup: /home/lemburg/zope/Zope-2.9.0/lib/python/App/ImageFile.py:21: DeprecationWarning: Using OFS.content_types is deprecated (will be removed in Zope 2.11). Instead use zope.app.contenttypes. from OFS.content_types import guess_content_type Did you put in a specific warn filter for this? Yes, one that's supposed to catch exceptions.DeprecationWarning (basically, I just uncommented the example in the zope.conf file). this doesn't sound surprising. Perhaps there's a bug in the Zope filter code ?! Well, the above was a bug that I think has already been fixed... I haven't seen it though, as it's only in 2.9 and we're using 2.8 -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jan 24 2006) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] Warnings from mxODBC in 2.8.5
Chris Withers wrote: M.-A. Lemburg wrote: The warning filter should work for any Python code which issues these warnings, regardless of where and how it is defined. However, you'd have to register the filter early during Zope startup in order for it to be active by the time OFS.Application.py is imported. I'm using the warning filter stuff that zope.conf provides, it works for all other products ,just not mxODBC. I wonder why? Well, given that in Zope 2.9.0 it also doesn't catch the following warning that you get on startup: /home/lemburg/zope/Zope-2.9.0/lib/python/App/ImageFile.py:21: DeprecationWarning: Using OFS.content_types is deprecated (will be removed in Zope 2.11). Instead use zope.app.contenttypes. from OFS.content_types import guess_content_type this doesn't sound surprising. Perhaps there's a bug in the Zope filter code ?! Anyway, I guess this is mainly aimed at the eGenix people: is there a version of mxODBC available which has these problems fixed? No. The reason is that the mxODBC Zope DA supports many old Zope versions (starting with Zope 2.3). *sigh* Our next version will only be available for Zope 2.7 onwards and will remove much of the old-style interface logic which we still have to keep around for backwards compatibility reasons. When's this due to land? Sorry, but we don't have an ETA yet. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jan 23 2006) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] Warnings from mxODBC in 2.8.5
Chris Withers wrote: Hi All, I get the following warnings from mxODBC on Zope 2.8.5: lib/python/OFS/Application.py:788: DeprecationWarning: __init__.py of Products.mxODBCZopeDA has a long deprecated '__ac_permissions__' attribute. '__ac_permissions__' will be ignored by install_product in Zope 2.10. Please use registerClass instead. DeprecationWarning) lib/python/OFS/Application.py:803: DeprecationWarning: __init__.py of Products.mxODBCZopeDA has a long deprecated 'meta_types' attribute. 'meta_types' will be ignored by install_product in Zope 2.10. Please use registerClass instead. DeprecationWarning) lib/python/OFS/Application.py:820: DeprecationWarning: __init__.py of Products.mxODBCZopeDA has a long deprecated 'methods' attribute. 'methods' will be ignored by install_product in Zope 2.10. Please use registerClass instead. DeprecationWarning) Have other people seen this? I tried adding a warning filter but it didn't have any effect. My only guess is becuase mxODBC ships only as .pyc files :-S The warning filter should work for any Python code which issues these warnings, regardless of where and how it is defined. However, you'd have to register the filter early during Zope startup in order for it to be active by the time OFS.Application.py is imported. Anyway, I guess this is mainly aimed at the eGenix people: is there a version of mxODBC available which has these problems fixed? No. The reason is that the mxODBC Zope DA supports many old Zope versions (starting with Zope 2.3). Our next version will only be available for Zope 2.7 onwards and will remove much of the old-style interface logic which we still have to keep around for backwards compatibility reasons. Cheers, -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jan 20 2006) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] mxODBC Zope DB2 adapter - how to specify the current schema?
Gergana Silvanova wrote: Dear all, I'm using Zope with IBM DB2... the adapter which I use is mxODBC DA from eGenix... in the database connection string, I can specify DSN, UID, PWD and adapter-specific stuffdoes someone know if there is a way to specify the current schema? I looked in the documentation, but did not find it. The only way to do this would be in the connection string, using additional parameters. Please consult the ODBC driver documentation for available options. FWIW, this page lists the options for the Linux DB2 ODBC driver: http://www-03.ibm.com/servers/eserver/iseries/linux/odbc/guide/odbcproperties.html This is the general documentation page for the driver: http://www-03.ibm.com/servers/eserver/iseries/linux/odbc/guide/ Until now I was using the Zope DBDA adapter from BlueDynamics, and I easily could specify the schema, together with the database, username and password, in the database connection. -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Jan 20 2006) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] Returning values from Oracle function/procedure withZSQLMethod
Chris Withers wrote: M.-A. Lemburg wrote: Huh? I think you need to provide a little more information there... Sorry, I meant that the native Oracle interface is not DCOracle2, hinting that at the project I mentioned below. right, but DCOracle2 is *A* native oracle interface, right? No doubt about that :-) We're considering working on one of these. It is not clear yet whether we'd just hook up on one of the existing Oracle interfaces or invent our own. Tell me more :-) Nothing much to tell yet - we're currently busy with other products, but the above idea is in the queue. How will it be different to DCOracle2 and how far along with it are you? I have imminently in my stack fixing a number of DCOracle2 issues and getting a release or three out, and if I don't need to do that, I'd like to know now ;-) We won't have anything ready in the next three months; that much I can tell you. If you make DCOracle2 stable enough to use as low-level interface, we might even consider using DCOracle2 for the Zope DA, so we wouldn't want to hold you off on fixing issues in DCOracle2 :-) -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Apr 22 2005) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db
Re: [Zope-DB] Returning values from Oracle function/procedure withZSQLMethod
Matthew T. Kromer wrote: Chris Withers's branch of DCOracle2 has some changes that help the connection pooling problem. The issue basically is that the Zope adapter for DCOracle2 is fairly old and crusty. I think Jim's correct when he suggests doing your own pool management from a module. All that the DA is supposed to give you is a pool of connection objects and Zope transaction manager awareness. There's a little more to it than that, but the Zope DA is so old -- it derives from a product that predates Zope 2. It would probably be solved best by *jettisoning* Zope.Shared.RDBMS code, but... I don't actively maintain the code base any more (I haven't for about 18 months). It isn't totally abandoned, but I don't work with Oracle at work any more, and so I don't have much of an itch to scratch to fix problems. My home installs of Oracle have all gotten clobbered by entropy (read: re-installs of Linux to counter failed hardware). You can also consider using eGenix's mxODBC adapter. If you're on Windows, that's definitely worth a try. On Unix you'll need an ODBC driver for Oracle, e.g. the EasySoft one, since Oracle doesn't ship a driver with the database (even though they do on Windows and it would probably be easy for them to port it to Unix as well). On Apr 8, 2005, at 6:58 PM, Cynthia Kiser wrote: Quoting Jim Abramson [EMAIL PROTECTED]: In our experience we ended up needing to do increasingly complex things with plsql, and ultimately, we had no choice to move all our db access out into ExternalMethods or Products and use DCOracle2 directly. This does require constructing your own connection pool/management, but once you've built that you can leverage DCOracle2 directly in python and this provides much more flexibility. When you do our own connection management, are you able to avoid DCOracle2 leaking connections? In our Zope 2.6.1/DCOracle2-1.3b server, we accumulate sessions where Oracle is waiting for a response from Zope, but Zope apparently thinks it closed that connection and opened a new one. Manually closing and reopening the connection does not clean up the forgotten sessions, so I periodically (~monthly) restart the Zope server to clean up. Killing the Zope processes seems to finally signal Oracle (on a remote machine) that the client is no longer interested in those old open sessions. The smidge of testing I did with DCOracle2 from the command line left me with the impression that its connection closing function did not work. I could close a connection - and then still use it to talk to my database. I wasn't really sure enough of those tests to report this as a bug, but it is vaguely troubling. -- Cynthia Kiser ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db -- Marc-Andre Lemburg eGenix.com Professional Python Services directly from the Source (#1, Apr 13 2005) Python/Zope Consulting and Support ...http://www.egenix.com/ mxODBC.Zope.Database.Adapter ... http://zope.egenix.com/ mxODBC, mxDateTime, mxTextTools ...http://python.egenix.com/ ::: Try mxODBC.Zope.DA for Windows,Linux,Solaris,FreeBSD for free ! ___ Zope-DB mailing list Zope-DB@zope.org http://mail.zope.org/mailman/listinfo/zope-db