Learning with DB2 Express-C

By Martin Hubel posted Jul 12, 2016 08:03 AM


Learning with DB2 Express-C

When I teach classes, I am frequently asked about ways to learn more about DB2 after the class. The answer is simple: DB2 Express-C, the community edition of DB2. You can continue to learn, experiment and develop queries and applications through this easy to use and install version of DB2.

The implementation of SQL on Linux and Windows is similar to DB2 on other platforms, so it provides a safe “sandbox” for learning, even for DB2 for z/OS developers. The sample database on DB2 Express-C provides the typical human resources scenario used on all DB2 platforms.

DB2 Express-C is free to use for both development and production applications. The applications developed on Express-C can be deployed and used for free in production. If you have developed a small application related to your hobby, or perhaps an application for your community or favorite charity, this can be used without cost.

For production applications that require the full capability of a highly available database product, DB2 Express-C applications are easily ported to other editions of DB2 on Linux, Unix and Windows. But, for small application where 100 percent availability is not needed, perhaps DB2 Express-C is acceptable.

While “free” is good, DB2 Express-C can be installed on any physical or virtual system regardless of size, but it will only use up to a maximum of 2 cores and 16 GB of memory. Beyond this limit, your application is likely large enough to justify a full function version with full IBM support.

Maintenance for DB2 Express-C

Normal maintenance for other editions of DB2 for LUW is delivered via fixpacks. Like DB2 itself, fixpack installation is very straightforward, and it is possible to install the next fixpack, skip fixpacks or fall back to an earlier version with minimal time and effort.

With DB2 Express-C, the install is the same straightforward process, but maintenance is delivered differently. DB2 Express-C is refreshed at major release milestones, in my experience this is about twice per year.

Support is handled only through an online forum within DeveloperWorks for DB2 Express-C. If you require more support, another edition might be more suitable. Or, if you already have better supported editions, and you can recreate the issue on that edition, you could report an issue through the support for that edition.

Another important consideration is fallback to an earlier maintenance level. With full editions of DB2, fallback is fairly straightforward, and older versions of fix packs are easily obtained. With DB2 Express-C, the community nature of the product means that only the current version of Express-C is available from the IBM web site. Fallback becomes problematic unless you saved the previous download. This is now the practice of one of our small customers, where DB2 Express-C is used for a small less-critical production database.


For new DB2 users, students and self-taught hobbyists, DB2 Express-C provides you with an excellent platform to play with a full-function, advanced database product. Should your efforts result in something of value, the licensing of DB2 Express-C allows you to deploy your application without cost concern. Should your application grow large enough to require higher availability and support, your application is easily ported to more robust versions of DB2.