HP3000-L Archives

July 1998, Week 1

HP3000-L@RAVEN.UTC.EDU

Options: Use Monospaced Font
Show Text Part by Default
Show All Mail Headers

Message: [<< First] [< Prev] [Next >] [Last >>]
Topic: [<< First] [< Prev] [Next >] [Last >>]
Author: [<< First] [< Prev] [Next >] [Last >>]

Print Reply
Subject:
From:
Dirickson Steve <[log in to unmask]>
Reply To:
Dirickson Steve <[log in to unmask]>
Date:
Tue, 7 Jul 1998 14:08:17 -0700
Content-Type:
text/plain
Parts/Attachments:
text/plain (48 lines)
        <<I appologize for the confusion.  We have a Turbo Image database. We
also use Transact as the programming language.  The RECNO I'm referring to is
listed as one of the options under FIND, GET, and DELETE in the Transact
manual and DBFIND, DBGET and DBDELETE in the Turbo Image manual. I should
have been more clear on this.

        I came from an IBM mainframe shop using ADABAS and ADABAS uses what
it call ISN's or Internal Sequence Numbers.  These ISN's are automatically
generated by ADABAS at the time a record is created/added to the database and
remain with that record for it's entire life in the database. I was hoping
that RECNO in Turbo Image acted the same way.>>


It doesn't; the RECNO= option returns, as mentioned in other replies, the
current IMAGE record number of the record retrieved. That record number can
change or become invalid, not only over time, but even within the
currently-executing statement (by doing a DELETE(CURRENT) and a PUT inside
the PERFORM= target to update search/sort items with CIUPDATE off, or by
changing the value of a sort item with CIUPDATE on while other processes are
updating the same set).

        <<The records I'm trying to delete are part of detailed sets not
masters.  We have a poorly designed database and the only way to identify the
record to be deleted is by doing a serial read.  Since I need to delete
80,000 records this
        will require separate serial reads on a file of 500,000 records.  To
me this is very inefficient.  That's why I was asking if RECNO (as described
in the Turbo Image Manual) remains constant through the life of the record.>>


I'd love to see this capability added to TurboIMAGE, and it has come up a
number of times (albeit sometimes in other guises, like the "no unique key"
problem with ODBC access from some front ends). A 4-byte counter value
"owned" by the engine would be great. But it doesn't exist at the moment.

        <<The question still remains... Does RECNO (the 32-bit integer used
by Turbo Image) remain with the record for the life of that record while
exists within the Turbo Image database.  As far as I can tell we DO NOT
repack the database using any kind of utility.>>


The "correct" answer is "No". The "complete" answer is "No, but if you have
CIUPDATE turned on and you can guarantee that nothing does DBDELETEs except
to really do away with a record and you never repack the data set then you
might get away with using it."

Steve

ATOM RSS1 RSS2