[AccessD] Cascade-delete (was: Estimating Help)

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





More information about the AccessD mailing list