Tried that but no luck.
The problem was the Yahoo hosting - when you create a db in their 'control panel' the db user created has limited permissions - doesn't allow table creation (!) & I couldn't see a way of resetting or changing those permissions. I am pretty new to all this though. So I installed phpmyadmin, created a new database and it worked - the user has full permissions. And the "@localhost", well it seems to add "@localhost" to the username created, even though the server is mysql - in the database that works, the db user is still [email protected]'.
Thanks heaps for all your help though,