SQL differences for DB2 versions

2019-05-15 08:11发布

问题:

We are developing software that generates and executes SQL queries for Oracle and SQL Server using ODBC drivers. We are researching the possibility to expand to DB2, but I read that there are several versions available. DB2 for LUW, for iSeries and for z/OS.

Are there any differences in SQL of SQL/PLSQL functionality in these versions?

As a ISV, is it possible to get a development environment for DB2 for iSeries or z/OS

回答1:

As many other answers already say, there are differences between the members of the DB2 family. All DB2 are SQL-99 complaint, and each member has specific features of the following SQL standards (2003, 2006, 2008, 2011). Also, some extra features have been added to each member, for example autonomous transaction or modules in LUW.

There is a group in IBM called SQL Language Council (SLC) and its purpose is to discuss about the DB2 family compatibility. The following articles written by the SQL architects (Serge Rielau and Rick Swagerman) talk about that:

  • More family matters: Selected common SQL features for developers of portable DB2 applications
  • Family matters: The SQL Reference for Cross-Platform Development

This group creates a document called SQL Reference for Cross-Platform Development that describe the compatibility between members of the family. The current version is 4.0, and it groups the features of the current DB2 versions.

Also, a recent series of articles in DeveloperWorks talk about the features in each member of the family. That gives you the portability between DB2:

  • Selected common SQL features for developers of portable DB2 applications
  • Selected common SQL features for developers of portable DB2 applications (Previous v4)

More info:

  • DB2 UDB Family On Common Ground


回答2:

Information on this can be found here:

http://www-01.ibm.com/software/data/db2/linux-unix-windows/index.html

And here

http://troels.arvin.dk/db/rdbms/

However all mentions DB2 versions conform to SQL-92 so the SQL standards are the same across the board