Here you go.
Phil Walker
+64 21 336294
[EMAIL PROTECTED]
infocusp limited
\\ PO Box 77032, Auckland New Zealand \ www.infocusp.co.nz
DISCLAIMER: This electronic message together with any attachments is
confidential. If you are not the intended recipient, do not copy, disclose
or use the contents in any way. Please also advise us by return e-mail that
you have received the message and then please destroy. infocusp limited is
not responsible for any changes made to this message and / or any
attachments after sending by infocusp limited. We use virus scanning
software but exclude all liability for viruses or anything similar in this
email or any attachment
-Original Message-
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Michael Preece
Sent: Wednesday, June 09, 2004 11:37 AM
To: [EMAIL PROTECTED]
Subject: RE: [U2] [OT] Cost of Oracle vs PICK
Sorry for the *very* late reply... (been otherwise
occupied - and there was a *lot* in my u2-users inbox
to get through)
--- Dennis Bartlett [EMAIL PROTECTED] wrote: Ross
The hooks are more or less in place ...
[Triggers]
Ah! Triggers!
Triggers as implemented in UniVerse are limited.
Why people don't change their READ, WRITE, DELETE
RELEASE statements to CALL FILEIOSUBR(...) I really
don't know. Relatively easy to do. If you just give it
some thought you'll see the enormous benefits. You can
pass the subroutine a real filename (as in string) as
opposed to a file variable - no need for OPEN
statements in your code (other than in the IO
subroutine(s)). The subroutine can convert that
filename to an actual pathname and check its
shared/named common list of open files to see if it
needs to be opened (so you only need to open any file
once per session). You can very easily introduce your
own triggers for *any* activity connected with the
file - including READs. If you want to take this
further, you can then more easily introduce a data
abstraction layer - allowing you to redesign a poorly
designed database - normalise it even. Changes at the
FileIO/database level can be accomodated in the FileIO
subroutine layer without any changes being required to
the code that calls the FileIO subroutine. Go on -
give it some thought - you'll soon see the light.
Cheers
Mike.
There is no read trigger - for historical reasons,
none that
apply today
- the fact remains - you cannot base what a user
sees or
doesn't see on
a trigger, as the trigger will only be actived on
insert,
update, or
delete, and forcing an update just to activate a
trigger
seems a little
pointless, wouldn't you say?
Triggers cannot be applied to Type 1 / 19 files. Not
that
much of a
limitation if it's data that you're seeking to
contain.
Bu*mm*er if it's
source access you're worried about - and after all,
if I can
get to the
source, I can work out how to get to anything else.
Having a file type (1/19) that works just like a
directory
is just
asking for trouble. Anyone with notepad can get in,
look at,
change,
destroy, and the IT department wouldn't even know.
Data security? Ha! All I need to beat UniVerse
security [on
Gatesware]
is access to the server. Access to the server will
give me
the ability
to create a dummy account and thence gain
fiddle-ability to
all...
To create a dummy account all I need do is write an
entry
into
UV.ACCOUNTS. How do I do this?
(1) I use Explorer to get a copy of the UV.ACCOUNTS
file
from the server
(via the OS), I write it into my copy of UniVerse PE
as the
local
UV.ACCOUNTS file, add the necessary record, eg
GOTCHA, use
same faithful
explorer / midnight commander to write said file
back onto
server.
(2) Use UniVerse PE to create a universe account
with TCL
access
rights, use Explorer to copy onto server, as GOTCHA,
in
correct place as
defined in UV.ACCOUNTS entry added in step (1).
(3) Login to new GOTCHA account, set qfile pointers,
avoid
hacking
highly security system entry controls coz I don't
need to,
and besides
that would force an update, and hence a trigger.
(4) No read trigger, therefore no knowledge that
I've
accessed your
data. I've copied it all to my system, I've copied
your
source to my
system, I've copied your dictionaries to my system.
Even on
runtime
sites, the lack of source code doesn't prevent me
from
knowing all there
is to know about your company.
---
u2-users mailing list
[EMAIL PROTECTED]
http://www.u2ug.org/listinfo/u2-users
Find local movie times and trailers on Yahoo! Movies.
http://au.movies.yahoo.com
---
u2-users mailing list
[EMAIL PROTECTED]
To unsubscribe please visit http://listserver.u2ug.org/
---
u2-users mailing list
[EMAIL PROTECTED]
To unsubscribe please visit http://listserver.u2ug.org/