Author: Grant Allen
Aimed at: developers who want to learn DB2
Reviewed by: Kay Ewbank
Looking for a free database? How about DB2? Will this book help?
Many people are aware of free databases such as MySQL and SQL Server Express Edition. What is possibly less well known is that there is a free version of IBM DB2 – DB2 Express-C - the community version of DB2 Express edition, which supports up to 2 CPUs and 4GB of RAM.
The profile of DB2 is strange; it has traditionally been seen as the best OLTP database, it regularly comes top of the TCP benchmarks; and more structured data has been stored in DB2 than any of its rivals (when you take mainframe environments into account). Given the excellent facilities and performance of DB2, you have to wonder why its profile is so low among non-database people.
In Beginning DB2 Grant Allen looks at using DB2, and in particular DB2 Express, covering what the essentials are, how to use it in applications, and how to program and administer it. The book starts from where to download DB2, which edition to choose, and how to install it for Linux or Windows. Once installed, Allen shows how to administer DB2 using its wizards, the DB2 Control Center and command line tools.
Having shown how to install DB2 and carry out basic administration, Allen moves on to look at the basics of using IBM Data Studio, the developer tools built on Eclipse that you can use with all the DB2 editions. The introduction shows how you can use them to create a data project, and guides you through the wizards for SQL statements and stored procedures. He then looks at SQL in depth, with three good chapters on SQL, functions and stored procedures. The next three chapters in this part of the book look at authentication, security, and XML, before moving back to the more central topics of indexes, sequences and views. I found this order a little odd, but the material covered was good.
The next part of the book looks at the different options for programming with DB2 Express Edition, with chapters on using PHP, Ruby and Rails, Visual Studio .NET, Java, and a collection of ‘other’ options. The problem I had with this part of the book is that I imagine you’ll probably already be a PHP/Ruby/Visual Studio developer who wants to learn DB2 (in which case you don’t need to be told how to install and configure your particular language). I can’t see there’ll be that many people who need to learn both DB2 and a programming environment at the same time. However, it may be useful to see how to connect to a database, create DB2 tables from the programming environment, and work with stored procedures, all of which are covered.
The final part of the book goes into more depth on database administration, with chapters on database configuration, backup and recovery, moving data in bulk, and monitoring and tuning.
Overall, this is a useful book to at least find out what DB2 does and how you can use it from different programming environments. The chapters on administration are stronger and go into more depth than the programming chapters, and I’d have liked to have seen at least a couple of more major sample applications to show how to put it all together. However, if you’re looking for a free database to try, and want to learn about DB2, this book will certainly teach you that.