This 'ENGINE=' syntax is important; don't forget to look through your older code for similar 'TYPE=' designations. There are some well-know applications which are choking on 'TYPE=HEAP', for example, reporting a Syntax Error.

If people are not familiar with switching ENGINE types, this one can bite you!

This might go without saying for most folks, but just so you know, this statement does not necessarily return the same statement that was actually used to create the table in the first place. It returns a statement which if run at the current time will recreate the given table with its current structure (not including the data). So if you create a table, then alter it, then run the SHOW CREATE TABLE command, it will return a statement that acts as if the change represented by your ALTER command were incorporated into your initial CREATE TABLE command.