08-12-2002, 02:05 AM
What is more efficient in the overall size of d/b
haveing all the fields in one table or creating seperate tables for various sections of sie
Content - id - users - name-age - address - guestbook - message - date -news - hit - url - etc etc
content - id - news
users - id - name - age - address
gusetbook id - message -date
08-12-2002, 04:39 PM
personally, I think it is faster to have all of the fields in the same table. As long as you only select the fields you want to display and not just select * the db should run efficiently. Making connections to various tables adds time to loading dynamic content.
Database design is just as difficult as important. With a good design, you can have fast access to the required data, without hugh updatingproblems (updating, insertion or deletion anomaly's) Your design will depend on what data you need to insert/select/update in each connection, and on the kind of data (is it updated frequently, do you reuse a lot of data (over time, over records), ...)
Also, if you need to be able to track the changes in your database (who made them? when?), it's in most case best to spread the data over a few tables.
With the data from your example, I don't think it will be moderated frequently so you might as well put it in one table
08-14-2002, 01:40 AM
What raf said. You're probably better off studying relational database design first, and then worrying about efficiency. :D
08-14-2002, 10:06 PM
In relational databases, there is a correct way of designing tables. It is through a process called "normalization". A fully normalized database has no duplicate information and will be smaller than one that isn't normalized.
Often times in a web environment, a fully normalized design may not be desirable, especially when efficiency is a factor and you are joining large amounts of records.
According to Microsoft, there are two different ways you can use a database, 1) Data Warehousing - where you collect information and give reports. If you this is how you are using the database, you may want to leave it unnormalized. 2) Online Analytical Processing - where you are constantly doing updates, inserts, deletes, etc. (like a forum :) ) you want to have it as normalized as possible.
If you have access to the MS-SQL Server CD, see the Microsoft documentation for Database Design Considerations.
"people tend to hate me cause I never smile
as I ransack their home, they want to shake my hand"
-The Who The Seeker