IBM i connections need support for "system naming" mode. - DataDirect Connect - Products Enhancements - Progress Community

 DataDirect Connect

IBM i connections need support for "system naming" mode.

  • Under Review

When connecting to DB2 for i, which indicates an IBM i platform (formerly known as AS/400 or iSeries), it is important to support the traditional "system naming" mode, and not just the "SQL naming" mode.  The implications of this go far beyond the syntax of whether to use '.' or '/' as the separator when qualifying names (prior to 2012), such as affecting the authorities attached to new objects.  See System vs SQL Naming - Part 1 and especially Part 2.  The most critical of these implications is that under system naming the system can use the "library list" to search multiple schemas when an object name is unqualified. A library list is analogous to a search path in a Windows or Unix-type OS.  This is standard practice in most IBM i shops, and enables us to run code in multiple environments (ex. development, QA, training, production) without changing any code, merely by controlling the job's library list.  Using a current schema is entirely different, and would only allow a single schema to be searched for objects with unqualified names, and would be unacceptable in many IBM i shops.  This feature should be included in any product connecting to an IBM i system, even if (incorrectly) referred to as an AS/400, iSeries, or otherwise.

(Terminology notes: DB2 comes in three co-equal platform editions -- DB2 for i, DB2 LUW (Linux/Unix/Windows), and DB2 for z/OS.  They all used to be marketed as DB2 UDB (Universal Database), and support the same set of core features, but each has features not (yet) included in the others.  Perhaps because of IBM's internal divisions, the IBM i version is often overlooked by the rest of IBM.  Yet IBM sells more Power Systems than any other, and more of those systems ship with IBM i than any other OS.  DB2 is an integral and inseparable component of IBM i.  In IBM i terms, a "library" is a schema.  It is common for many to incorrectly refer to a Power System, running IBM i, as an AS/400 or iSeries which are long discontinued brand names.  IBM has not built an AS/400 since 2000.)

Comments
  • Connection keywords for IBM's DB2 for i ODBC driver - www-01.ibm.com/.../connectkeywords.htm

  • To put this in perspective, imagine telling a Windows developer that from now on they will not be allowed to use any path variables, that they must hard code the entire path as part of every file name, if that item not in the current directory.  No config file shortcuts, no registry settings, or other workarounds allowed.  Tell a Java programmer that they will no longer be able to use a CLASSPATH.   This is essentially what you are telling the IBM midrange developers when you take away library lists.