Commands like CREATE, GRANT, DROP always return "0 rows affected"
The way mysql works is this ...

Performing INSERTs, UPDATEs, DELETEs explicitly names tables

SQL Commands that do not explicitly name tables have 0 row(s) affected

Such commands that echo 0 row(s) affected include


CREATE USER
GRANT/REVOKE
CHANGE MASTER TO (to Setup MySQL Replication)


I suppose this has always been the case.