John W. Colby
jcolby at colbyconsulting.com
Sun Feb 9 21:40:00 CST 2003
Rocky, clueless means many things. I once had a user call me into their office and inform me that they had been unable to add a field to a table. They obviously had taken a class somewhere. Had no idea what BE / FE meant, and was in the FE trying to add a field to the table. I gently informed them that they were not supposed to be doing that anyway. Access is sold as a "you can do it yourself" database. All levels of people take all kinds of classes. Just because they are not developers doesn't mean they can't figure things out. I call this person to whom I refer "clueless", yet she was trying to add a field to a table. > Would a clueless person be likely to rip thousands of record out of a database by going outside the app? Yep! I have no desire to further this thread. I have said what I want to say. We enforce things at the database level precisely to prevent the 98% from inflicting heavy damage. If you are not a fan of default values and validation rules, you will have no use for setting cascade delete off. I know developers who publicly state they have no use for such things. "Do it all in the interface, it gives me ultimate control". Uhh... yea. Is the cascade delete setting useless? No, it is of great value to the DBA. I can go in to a database and set it on, do what I want to do and set it back off. I can write code to do this as well. I know you don't want to hear it, and I am fully aware that Gustav is going to berate me, but I do not set it on (in production) in my databases. I can mail you 10 BEs with a thousand tables, and you will not find it turned on, even once, in any relationship. It is not necessary, it is a convenience to avoid a lot of work. IMHO, Microsoft put it in there for the amateurs that they are trying so hard to get to buy Access and build little databases. Someone turns them on to referential integrity and cascade delete allows them to delete records. They are their only user. They are allowed to do whatever they want. Cascade delete is perfect for them, it really is. And of course it is perfect for me in the DBA role as well. I build databases for businesses with dozens or even hundreds of people of all skill levels. There is rarely (almost never) anyone inside the company of my skill level, but there are usually power users who are truly dangerous creatures. I am rarely paid to set up full scale security but I can at least do the simple stuff. I am not telling you how to do your job, only how I do mine and why. At least we have discussed the whys and wherefores. You know what it is, how to use it, why you might not want to use it, and can make your own informed judgment whether to do so. John W. Colby Colby Consulting www.ColbyConsulting.com -----Original Message----- From: accessd-admin at databaseadvisors.com [mailto:accessd-admin at databaseadvisors.com]On Behalf Of Rocky Smolin - Beach Access Software Sent: Sunday, February 09, 2003 3:48 PM To: accessd at databaseadvisors.com Subject: Re: [AccessD] Cascade-delete (was: Estimating Help) Giving us a brand new definition of the word clueless. Which renders the cascade delete setting irrelevant. We're talking password protected backend, no? Or encryption. (Assuming a person who could go to the web and buy the password breaker to get in is neither clueless nor innocent.) Rocky