|
|
1.1 root 1: .th GET AM 9/12/77
2: .sh NAME
3: get - get a single tuple
4: .sh SYNOPSIS
5: .nf
6: get(d, tid, limtid, tuple, getnxt)
7: struct descriptor *d;
8: struct tup_id *tid, *limtid;
9: char tuple[MAXTUP];
10: int getnxt;
11: .fi
12: .sh DESCRIPTION
13: GET provides a mechanism to scan through tuples in a relation.
14: Each call to GET returns one tuple into the caller's buffer (TUPLE).
15: If GETNXT is false (=0), then the tuple identified by TID is returned.
16: This mode is useful for retrieval by secondary indices and does not
17: require a call to FIND before the call to GET.
18:
19: In most cases GETNXT will be true (non-zero) and a series of GET calls
20: will be made.
21: FIND must be called to initialize the
22: starting (TID) and ending (LIMTID) points of the scan.
23: GET will update the tuple id (TID) as tuples are returned and
24: other programs should not attempt to perform any arithmetic on tuple id's.
25: Tuple id's are unique identifiers of a tuple but the value of the
26: tuple id has no relation to either the tuple's physical order in
27: the relation or the position in a file.
28:
29: Calls done via GETNXT will not accumulate pages
30: in the buffer pool.
31: When Get has to go to the next page,
32: the current page buffer will be reused.
33: .sh DIAGNOSTICS
34: .nf
35: AMWRITE_ERR -- pageflush error
36: AMREAD_ERR -- get_page or invalid error
37: 0 -- success
38: 1 -- end of scan (no tuple returned)
39: 2 -- tuple deleted (getnxt = false only)
40: .fi
41: .sh "TRACE FLAGS"
42: 23.0 - 23.1
43: .sh "SEE ALSO"
44: closer, find, get_tuple, openr
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.