> From: Claude Schneegans [mailto:[EMAIL PROTECTED] 
> In the wider and most general case, you are right, but this 
> is only theory and it is completely the oposite in most simple cases.
> Take for instance an intranet where users can
> - Edit content (ED)
> - Edit images (EI)
> - Edit News (EN)
> - Edit agenda (EA)
> - Manage users (MU)
> - set permissions (SP)
> - Manage documents (MD)
> - etc, you'll never have more than about a dozen, Then having 
> a 30 or 40 characters text field with the list for 
> permissions a user has if FAR more efficient than having a 
> cross table with one record per user per permission: it is 
> FAR easier to check what a user can do, and it is FAR easier 
> to modify his permissions in ONE field in ONE record than 
> having to delete all previous records in a cross table and 
> inserting new records.
> 
> All these "Never do" and "Always do" rules about databases (and
> languages) are just good for beginers as a first approximation.

I would disagree. Why not structure the DB to support growth from the
get-go? I guess if you are 100% certain things will not need to be expanded
upon, etc then you MAY fair ok, but I would be cautious since
clients/customers/users often make changes all the time requiring us to
expand what we initially started with. Also, does the overhead of adding a
join table exceed the overhead associated with searching through a list
stored in one column? Surely you could write 4 queries for getting the
permissions, updating, deleting, and inserting... add views and stored
procedures in the mix (if your DBMS supports them) and you are set now and
should things grow. I just prefer to do things in a way that allows me to
expand on things easily.... I know for a fact that as that list stored in
one column grows and grows, the performance of using a join table will
perform better.





~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~|
Find out how CFTicket can increase your company's customer support 
efficiency by 100%
http://www.houseoffusion.com/banners/view.cfm?bannerid=49

Message: http://www.houseoffusion.com/lists.cfm/link=i:4:196598
Archives: http://www.houseoffusion.com/cf_lists/threads.cfm/4
Subscription: http://www.houseoffusion.com/lists.cfm/link=s:4
Unsubscribe: 
http://www.houseoffusion.com/cf_lists/unsubscribe.cfm?user=11502.10531.4
Donations & Support: http://www.houseoffusion.com/tiny.cfm/54

Reply via email to