I recently started using Laravel4 and composer on a PHP project. When updating my database using Laravel4’s  database migrations I came across this error:

[Doctrine\DBAL\DBALException]
 Unknown database type enum requested, Doctrine\DBAL\Platforms\MySqlPlatform may not support it.

Like all other programmers using a framework they’re inexperienced with I frantically googled for a solution, and I came across this post on github. Turns out the clue was in the name all along and its not a Laravel issue at all, but a Doctrine DBAL issue for which there is currently no fix for.

<code>Schema::table('users', function($table)
{
    $table-&gt;renameColumn('from', 'to');
});</code>

Note: Renaming enum column types is not supported.

Currently you cannot rename an enum column type, using Laravel4’s query builder. So the only work around I could think of was manipulating the MySql database directly from the migration script. So you could remove the above query builder code and replace it with raw SQL like this:

<code>DB::statement( 'alter table <b>tablename</b> change <b>oldname newname</b> varchar (10) ');</code>

This will work however your better off using the query builder as your queries will still run if you decided to change DB for some reason:

<code>Schema::table('users', function($table)
{
    $table-&gt;dropColumn( 'columnName' );
    $table-&gt;text( 'columnName' );

});</code>