Marc starts off by explaining how to install and configure phpMyAdmin on Windows and Linux. Given a working LAMP or WAMP platform, any reader with basic PHP skills should be able to get phpMyAdmin up and running really quickly.
After a first overview over the user interface, the author explains how to create databases and tables, and how to enter data. A quick overview over phpMyAdmin's querying capabilities concludes the "First steps" chapter. Next, the author dives into changing data. I was surprised to learn that phpMyAdmin has a multi-row editing feature.
The "Changing Table Structures" chapter deals with how to edit table definitions and the various column types like TEXT, BLOB ENUM, and DATE. This chapter also deals with index management, and explaining queries.
Chapter 7, "Exporting Structure and Data", deals with exporting databases. Though I personally have never seen the value of exporting a database to anything else than SQL, I was rather surprised to learn that phpMyAdmin supports exporting to PDF, Word, Excep, Open Office, Latex, XML, or YAML format.
Consequently, the next chapter deals with importing structure and data. Due to various server limits like timeout, or limitations of the file upload size, this is not always as easy as it might seem. The author explains the problems and shows ways to circumvent restrictions, which I think is very important, as I see quite a few users in the field struggling with importing large database dump files.
Chapter 9 deals with searching the database, without having to write SQL statements. I was not aware, for example, of the possiblity to search all database tables for strings or even regular expressions. The next chapter covers table and database operations, including table maintenance, renaming tables, moving and copying tables, appending data to a table, and even copying a whole database, which can be an interesting alternative to creating a backup before upgrading it. The database backup feature is complemented by the possibility to rename a database, thus allowing you to create a backup and potentially restore it without having do download and upload SQL dumps.
Chapter 11 introduces the relational system. Since MyISAM tables do not support key relationships, phpMyAdmin can optionally administer information about table relations. The author explains how to set up phpMyAdmin to do this, and continues by introducing the Designer, which is an ajaxy tool to work with table relationships, foreign keys, and check the referential integrity of a database.
Of course, a chapter on how to write SQL statements with phpMyAdmin can not be left out from a book like this. The author explains how phpMyAdmin helps the user to write SQL statements, and shows how an external SQL validator can be used, to make sure that the statements conform to the SQL standard. He then dives into creating multi-table queries, which is where more complex criteria and joins come into play.
Next, the author explains bookmarks, a way of storing statements for later reuse, just like browser bookmarks. In that chapter, I was surprised to learn that phpMyAdmin even allows changing the default initial query that is executed when the table is browsed.
Following a short chapter on how to create database documentation in tabular or PDF format, mime-based transformations are explained. Mime-based transformations allow you, for example, to configure phpMyAdmin to display thumbnails of images stored in the database, format dates, create links, or display strings in hex format, which can be useful to debug issues with different or wrong character encodings. These transformations were, admittedly, completely new for me, and I think they may in fact be one of the most powerful features phpMyAdmin has.
Towards the end of the book, the author covers an important topic, namely character sets and collations. He explains the differences between MySQL versions before and after 4.1, and then continues with a short introduction of new features in MySQL 5, like views, stored procedures, triggers, information_schema as the standards-compatible way to access meta data, and profiling.
This chapter is followed by "MySQL Server Administration", which comprises of user and privilege management, retrieving database information, and checking the server status. The book is concluded with a Troubleshooting chapter that gives hints on how to solve common errors.
I like the book for its straight and logical structure. The author's explanations are short and to the point, so the user is provided with the right amount of information to get going with phpMyAdmin. I would strongly suggest to have a basic level understanding of database theory (tables, relations, keys), as the author does not give any theoretical background, but just shows how to make use of the features in phpMyAdmin.
For $34.99, you get 300+ pages packed with information about all aspects of phpMyAdmin. I must say that the book's layout is not one of the most beautiful ones I have ever seen, and some screen shots could be of better quality, but this does not really affect the reading experience too much. I can definitely recommend this book, and according to the phpMyAdmin website, it is also available in various translations like Czech, German, Italian, and Spanish.