I would completely disagree...your database should be normalized in this case...it allows for more scalability. If you like your comma seperated fields create a view but your true data store should not have just comma deliminated crap, ecspecially if you are trying to look for a single value in the comma seperated list. What happens when employee b looses access rights? Well I have to select all thier access rights then delete out the value from the list then re-insert it. You could do this with a semi conveluted update statement or in 2 or 3 steps of selecteding and update...or you could just delete thier access right from the normalized table. I can also do blanket access right changes...Say I want to remove access to something from everyone while it is upgraded... delete from access_rights where right = 'EN' ... how are you going to do this with a table full of comma seperated values....not nearly as easily...
Adam H On Fri, 25 Feb 2005 13:29:30 -0500, Claude Schneegans <[EMAIL PROTECTED]> wrote: > >>This IS bad database modeling, > > 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. > > -- > _______________________________________ > REUSE CODE! Use custom tags; > See http://www.contentbox.com/claude/customtags/tagstore.cfm > (Please send any spam to this address: [EMAIL PROTECTED]) > Thanks. > > ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~| Logware (www.logware.us): a new and convenient web-based time tracking application. Start tracking and documenting hours spent on a project or with a client with Logware today. Try it for free with a 15 day trial account. http://www.houseoffusion.com/banners/view.cfm?bannerid=67 Message: http://www.houseoffusion.com/lists.cfm/link=i:4:196612 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

