MySQL driver doesn't support PDOStatement::getAttribute(). If you use it, it produces a warning, even if you set error reporting (PDO::ERRMODE) to PDO::ERRMODE_SILENT; except when you set to PDO::ERRMODE_EXCEPTION. Also, the SQLSTATE error code of the PDO statement (not the PDO object itself, i.e. using PDOStatement::errorCode()) will be 'IM001'.
Hope this helps someone!