Host Integration Server SP1 upgrades DDM SQLAM support to level 5 (811444)



The information in this article applies to:

  • Microsoft Host Integration Server 2004
  • Microsoft Host Integration Server 2000 SP1

SUMMARY

Host Integration Server 2000 Service Pack 1 (SP1) upgrades the required level of SQL Application Manager (SQLAM) to level 5. This article discusses the details behind this upgrade and possible changes in behavior because of this upgrade.

MORE INFORMATION

The Microsoft OLE DB Provider for DB2 (DB2OLEDB) and ODBC Driver for DB2 use the Distributed Data Management (DDM) protocol to access DB2 database systems. When a DDM client application, such as the DB2OLEDB Provider or the ODBC Driver for DB2, accesses a DB2 database system, the DDM client application passes SQL statements to a SQL Application Manager on the target system for processing. In the initial Exchange Server Attributes (EXCSAT) command that is sent by the DB2OLEDB Provider or ODBC Driver for DB2, the providers include a Manager-Level List (MGRLVLLS) that contains a requested level for the SQLAM on the target system.

In Host Integration Server 2000 base code, the requested SQLAM level that is passed to the target DB2 system is level 3.

Beginning with Host Integration Server 2000 SP1, the DB2OLEDB Provider and ODBC Driver for DB2 request SQLAM level 5.

This change in levels occurs because of the newly added support for retrieving a single result set from a DB2 stored procedure. To add this functionality, Microsoft upgraded the providers to use SQLAM level 5.

As a result of this change, some client applications may behave a little differently. Microsoft has discovered two such changes. However, more may exist. The following are the two known behavioral changes:
  • IBM iSeries systems that are running OS/400 V4R3 or earlier do not support SQLAM level 5. As a result, applications that use the DB2OLEDB Provider or ODBC Driver for DB2 from Host Integration Server 2000 SP1 systems must be used with OS/400 V4R4 or later.
  • Some versions of DB2 no longer allow specific COMMIT or ROLLBACK SQL statements to be issued when using SQLAM level 5. For example, with Host Integration Server 2000 base code, an application can do the following:
    Connection.BeginTrans
    Connection.Execute ("Insert into TABLE values (111, 'aaa')")
    Connection.Execute ("Insert into TABLE values (222, 'bbb')")
    Connection.Execute ("COMMIT")
    Connection.Execute ("Insert into TABLE values (333, 'ccc')")
    Connection.RollbackTrans
    With Host Integration Server 2000 SP1, an application must do the following to obtain the same result as before:
    Connection.BeginTrans
    Connection.Execute ("Insert into TABLE values (111, 'aaa')")
    Connection.Execute ("Insert into TABLE values (222, 'bbb')")
    Connection.CommitTrans
    Connection.BeginTrans
    Connection.Execute ("Insert into TABLE values (333, 'ccc')")
    Connection.RollbackTrans
    With the DB2 system, the user can no longer use explicit COMMIT or ROLLBACK operations between two Transaction contexts.

REFERENCES

Distributed Data Management Architecture commands are defined by the Open Group. For more information about Open Group and the DDM technical standards, visit the following Open Group Web page:

The Open Group Database Interoperability Consortium

The third-party products that are discussed in this article are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, regarding the performance or reliability of these products.

Modification Type:MajorLast Reviewed:5/6/2005
Keywords:kbinfo KB811444 kbAudDeveloper