<p>Whenever I design a database, I always wonder if there is a best way of naming an item in my database. Quite often I ask myself the following questions:</p>

<ol>
<li>Should table names be plural?</li>
<li>Should column names be singular?</li>
<li>Should I prefix tables or columns?</li>
<li>Should I use any case in naming items?</li>
</ol>

<p>Are there any recommended guidelines out there for naming items in a database?</p>

No. A table should be named after the entity it represents.
Person, not persons is how you would refer to whoever one of the records represents.
Again, same thing. The column FirstName really should not be called FirstNames. It all depends on what you want to represent with the column.
NO.
Yes. Case it for clarity. If you need to have columns like "FirstName", casing will make it easier to read.
Ok. Thats my $0.02