Though my journeys with rewriting games and such I've found that very few people use proper naming conventions for database tables. It's something very simple but often over looked. Please note I did not make these standards up, these are from actually working in a production environment developing software. A lot of development houses have there own small changes but they all stick to the same base rules.
Ok so you have a player table, each player has a weapon or weapons (the weapons need to be in a separate table). You would have two tables, the player table doesn't have to be called player it could be called users, accounts whatever. We are just using player for this example

player <-- holds all the data for the player account
player_weapons <-- holds all the data for each players weapons
The weapons table should NOT be called just weapon or weapons. Since the data in that table is relative to the player account you preface the table with the main table it references. Yes I know, simple right? But so many developers don't do this and it makes looking at tables and table references very cumbersome. Now if you had an attack log table what should it be called? That's right player_attacklog, not just attack log!
This lets others or even yourself look at the player_attacklog table and know that it relates to players. If it's just called attacklog, then really what do you know about it? Attacklog could be logging for admins, it could be anything and thats the point. At a glance you should have a good understanding of what the table relates to just by the name.