I am currently responsible for designing the entire database setup for a start up website. It is quite a responsibility and I want to get it right, not only for the site, but for my own experience. And I know this is really a general question, and obviously I can't reveal table structures I plan to have because of proprietary info etc, but I was hoping that there was someone on here who had some experience with designing a usable website with heavy reliance on a db for functionality purposes.
Basically, I want to know all the pitfalls that could occur and the general best practices. Things like, how normalized should the table structure be? Is it really the best idea to store user pictures directly into a table, or to just store a link to its directory on the site? I know this is a very general question, even if you could point me to general tutorials on such things I would appreciate it. Thank you for your understanding.


1 Answer 1


There have been volumes upon volumes written on normalization. No one here can tell you how normalized your database should be without information. The best advice is to read and fully understand what normalization is and, once you have that understanding, you'll be able to apply it to your application and database design.

Storing images in database? All I can say is test test test. It's going to depend on the application, hardware, table-size, etc. Luckily, for something like that, it's easy enough to store both the image and path in the same table and you can easily QA each.

I say this with absolutely no malicious intent, but if you need to ask about database design at that high of a level, you may be much better off contracting an experienced DBA/Data Architect to do the design legwork once you have the application layer designed.

  • No malicious intent inferred. I guess I must say I don't trust my knowledge of what I should do. I have tables designs and relationships in my head, but somehow or the other I feel as though It's not good enough. Sep 14, 2011 at 15:06
  • 1
    My suggestion would be to just put what you have in an ERD and, at the very least, have a data architect vet it. It certainly can't hurt.
    – Derek
    Sep 14, 2011 at 15:12
  • That is true. And a good idea. Sep 14, 2011 at 15:29

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.