Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!pt.cs.cmu.edu!andrew.cmu.edu!bg0l+ From: bg0l+@andrew.cmu.edu (Bruce E. Golightly) Newsgroups: comp.databases Subject: Re: Oracle: Previous Record Message-ID: Date: 18 Jul 89 13:42:03 GMT Organization: Carnegie Mellon, Pittsburgh, PA Lines: 22 There are indeed times when you can't think in terms of the relational model. Sometimes the users insist that they want what they want, and you can't do it without breaking the model. We had to write an application to do this kind of thing a while back. We don't use Oracle here, we use Ingres. The problem is basically the same using either, though. The suggestion that you use the ROWID (TID in Ingres) has some merit. Relational Technology (Ingres) has repeated pointed out that use of the tuple ID in user specified operations is not a supported feature and that relying on characteristics of the TID may result in a broken application some time. I suspect that Oracle would echo this. Another method might be used, however. In Ingres I have occassionally set up a tablefield that the user can't see on the screen and used it to store the set of possible matches. The idea of PreviousRecord may then be implemented by scrolling up in this table field and doing a simple SELECT based on the result to fill in the visible portions of the screen. The problem with this appraoch is that it requires lots more code. I don't know if you can do something like that in Oracle, so take it with a grain of salt. Bruce