Extension for IBM Db2 (LUW/i/z) and other compatible databases

ibm_db2 provides access to DB2 and compatible databases on PHP.
It uses a procedural interface. (PDO users should use PDO_IBM instead.)

The following software is supported without any additional licenses:
- IBM Db2 (Linux/Unix/Windows)
- IBM Db2 for i (running on IBM i)
- Apache Derby

The following software may require additional licenses on the database:
- IBM Db2 Connect for i (for using Db2 for i from LUW)
- IBM Db2 Connect for z (for using Db2 for z from LUW)

Note that for IBM i, IBM and Seiden Group recommend new applications use ODBC instead.

License: Apache License 2.0

Latest releases

Version Release Download
2.1.5 2021-09-30 ibm_db2-2.1.5.tgz
2.1.3 2021-03-10 ibm_db2-2.1.3.tgz
2.1.2 2020-12-22 ibm_db2-2.1.2.tgz
2.1.1 2020-12-02 ibm_db2-2.1.1.tgz
2.1.0 2020-11-30 ibm_db2-2.1.0.tgz
Show all releases


Version Message
2.1.5 * 2021-09-30: 2.1.5
- Use the new persistent resource API introduced in 7.3 (PHP 7.3 is new minreq)
- Fix truncation issues in db2_result
- Fix typo with character trim
- Fix issues with trim returning empty string if it should only return one char
- Fix leaks with various functions (result, get_option, escape_string, etc.)
- Fix build issue with ulong on some platforms
2.1.3 * 2021-03-10: 2.1.3
- Report failures in SQLGetDiagRec. This should warn on many silent errors.
- Workaround issue with using SQLGetSubString with a large buffer on a DBCLOB
with locator by trimming from first instead of last null byte.
- Workaround bug in SQL/CLI caused by unknown PTF, which causes a buffer
overflow with SQLGetData on char-like values. The PTF causing the regression
is unidentified, but workaround PTFs seem to exist, including SI75759. The
workaround will likely be kept until most no longer have the defective PTF.
2.1.2 * 2020-12-22: 2.1.2
- Fix memory leaks
- Remove PHP 5 compatibility stubs and ifdefs
- Fix compile warnings
- Use PHP 8 arginfo generator, with generated fallbacks for PHP 7
2.1.1 * 2020-12-02: 2.1.1
- Fix build regression on LUW with db2_execute_many
2.1.0 * 2020-11-30: 2.1.0
- Compatibility with PHP 8
- Fix compatibility with 64-bit PASE/modern IBM i (sqlcli-dev package, pointer/integer width mismatch, XMLSERVICE location, etc)
- Backport character trim from Zend Server
- Major improvements to test suite (fix broken tests, less hardcoding)
- Handle CCSID 65535 on IBM i
- Fix warnings (returning void from non-void, etc)
Show complete changelog