add db.1.85
[nvi.git] / db.1.85 / docs / recno.3.ps
blob8ffccfca90db10b200826806cb47c3bcc2acc42b
1 %!PS-Adobe-3.0
2 %%Creator: groff version 1.08
3 %%DocumentNeededResources: font Times-Roman
4 %%+ font Times-Bold
5 %%+ font Times-Italic
6 %%DocumentSuppliedResources: procset grops 1.08 0
7 %%Pages: 2
8 %%PageOrder: Ascend
9 %%Orientation: Portrait
10 %%EndComments
11 %%BeginProlog
12 %%BeginResource: procset grops 1.08 0
13 /setpacking where{
14 pop
15 currentpacking
16 true setpacking
17 }if
18 /grops 120 dict dup begin
19 /SC 32 def
20 /A/show load def
21 /B{0 SC 3 -1 roll widthshow}bind def
22 /C{0 exch ashow}bind def
23 /D{0 exch 0 SC 5 2 roll awidthshow}bind def
24 /E{0 rmoveto show}bind def
25 /F{0 rmoveto 0 SC 3 -1 roll widthshow}bind def
26 /G{0 rmoveto 0 exch ashow}bind def
27 /H{0 rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
28 /I{0 exch rmoveto show}bind def
29 /J{0 exch rmoveto 0 SC 3 -1 roll widthshow}bind def
30 /K{0 exch rmoveto 0 exch ashow}bind def
31 /L{0 exch rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
32 /M{rmoveto show}bind def
33 /N{rmoveto 0 SC 3 -1 roll widthshow}bind def
34 /O{rmoveto 0 exch ashow}bind def
35 /P{rmoveto 0 exch 0 SC 5 2 roll awidthshow}bind def
36 /Q{moveto show}bind def
37 /R{moveto 0 SC 3 -1 roll widthshow}bind def
38 /S{moveto 0 exch ashow}bind def
39 /T{moveto 0 exch 0 SC 5 2 roll awidthshow}bind def
40 /SF{
41 findfont exch
42 [exch dup 0 exch 0 exch neg 0 0]makefont
43 dup setfont
44 [exch/setfont cvx]cvx bind def
45 }bind def
46 /MF{
47 findfont
48 [5 2 roll
49 0 3 1 roll 
50 neg 0 0]makefont
51 dup setfont
52 [exch/setfont cvx]cvx bind def
53 }bind def
54 /level0 0 def
55 /RES 0 def
56 /PL 0 def
57 /LS 0 def
58 /PLG{
59 gsave newpath clippath pathbbox grestore
60 exch pop add exch pop
61 }bind def
62 /BP{
63 /level0 save def
64 1 setlinecap
65 1 setlinejoin
66 72 RES div dup scale
67 LS{
68 90 rotate
70 0 PL translate
71 }ifelse
72 1 -1 scale
73 }bind def
74 /EP{
75 level0 restore
76 showpage
77 }bind def
78 /DA{
79 newpath arcn stroke
80 }bind def
81 /SN{
82 transform
83 .25 sub exch .25 sub exch
84 round .25 add exch round .25 add exch
85 itransform
86 }bind def
87 /DL{
89 moveto
91 lineto stroke
92 }bind def
93 /DC{
94 newpath 0 360 arc closepath
95 }bind def
96 /TM matrix def
97 /DE{
98 TM currentmatrix pop
99 translate scale newpath 0 0 .5 0 360 arc closepath
100 TM setmatrix
101 }bind def
102 /RC/rcurveto load def
103 /RL/rlineto load def
104 /ST/stroke load def
105 /MT/moveto load def
106 /CL/closepath load def
107 /FL{
108 currentgray exch setgray fill setgray
109 }bind def
110 /BL/fill load def
111 /LW/setlinewidth load def
112 /RE{
113 findfont
114 dup maxlength 1 index/FontName known not{1 add}if dict begin
116 1 index/FID ne{def}{pop pop}ifelse
117 }forall
118 /Encoding exch def
119 dup/FontName exch def
120 currentdict end definefont pop
121 }bind def
122 /DEFS 0 def
123 /EBEGIN{
124 moveto
125 DEFS begin
126 }bind def
127 /EEND/end load def
128 /CNT 0 def
129 /level1 0 def
130 /PBEGIN{
131 /level1 save def
132 translate
133 div 3 1 roll div exch scale
134 neg exch neg exch translate
135 0 setgray
136 0 setlinecap
137 1 setlinewidth
138 0 setlinejoin
139 10 setmiterlimit
140 []0 setdash
141 /setstrokeadjust where{
143 false setstrokeadjust
145 /setoverprint where{
147 false setoverprint
149 newpath
150 /CNT countdictstack def
151 userdict begin
152 /showpage{}def
153 }bind def
154 /PEND{
155 clear
156 countdictstack CNT sub{end}repeat
157 level1 restore
158 }bind def
159 end def
160 /setpacking where{
162 setpacking
164 %%EndResource
165 %%IncludeResource: font Times-Roman
166 %%IncludeResource: font Times-Bold
167 %%IncludeResource: font Times-Italic
168 grops begin/DEFS 1 dict def DEFS begin/u{.001 mul}bind def end/RES 72 def/PL
169 792 def/LS false def/ENC0[/asciicircum/asciitilde/Scaron/Zcaron/scaron/zcaron
170 /Ydieresis/trademark/quotesingle/.notdef/.notdef/.notdef/.notdef/.notdef
171 /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef
172 /.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/.notdef/space
173 /exclam/quotedbl/numbersign/dollar/percent/ampersand/quoteright/parenleft
174 /parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four
175 /five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question/at/A/B/C
176 /D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft/backslash
177 /bracketright/circumflex/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q
178 /r/s/t/u/v/w/x/y/z/braceleft/bar/braceright/tilde/.notdef/quotesinglbase
179 /guillemotleft/guillemotright/bullet/florin/fraction/perthousand/dagger
180 /daggerdbl/endash/emdash/ff/fi/fl/ffi/ffl/dotlessi/dotlessj/grave/hungarumlaut
181 /dotaccent/breve/caron/ring/ogonek/quotedblleft/quotedblright/oe/lslash
182 /quotedblbase/OE/Lslash/.notdef/exclamdown/cent/sterling/currency/yen/brokenbar
183 /section/dieresis/copyright/ordfeminine/guilsinglleft/logicalnot/minus
184 /registered/macron/degree/plusminus/twosuperior/threesuperior/acute/mu
185 /paragraph/periodcentered/cedilla/onesuperior/ordmasculine/guilsinglright
186 /onequarter/onehalf/threequarters/questiondown/Agrave/Aacute/Acircumflex/Atilde
187 /Adieresis/Aring/AE/Ccedilla/Egrave/Eacute/Ecircumflex/Edieresis/Igrave/Iacute
188 /Icircumflex/Idieresis/Eth/Ntilde/Ograve/Oacute/Ocircumflex/Otilde/Odieresis
189 /multiply/Oslash/Ugrave/Uacute/Ucircumflex/Udieresis/Yacute/Thorn/germandbls
190 /agrave/aacute/acircumflex/atilde/adieresis/aring/ae/ccedilla/egrave/eacute
191 /ecircumflex/edieresis/igrave/iacute/icircumflex/idieresis/eth/ntilde/ograve
192 /oacute/ocircumflex/otilde/odieresis/divide/oslash/ugrave/uacute/ucircumflex
193 /udieresis/yacute/thorn/ydieresis]def/Times-Italic@0 ENC0/Times-Italic RE
194 /Times-Bold@0 ENC0/Times-Bold RE/Times-Roman@0 ENC0/Times-Roman RE
195 %%EndProlog
196 %%Page: 1 1
197 %%BeginPageSetup
199 %%EndPageSetup
200 /F0 10/Times-Roman@0 SF 130.12(RECNO\(3\) BSD)72 48 R(Programmer')2.5 E 2.5(sM)
201 -.55 G 130.12(anual RECNO\(3\))340.17 48 R/F1 9/Times-Bold@0 SF -.18(NA)72 84 S
202 (ME).18 E F0(recno \255 record number database access method)108 96 Q F1
203 (SYNOPSIS)72 112.8 Q/F2 10/Times-Bold@0 SF(#include <sys/types.h>)108 124.8 Q
204 (#include <db)108 136.8 Q(.h>)-.4 E F1(DESCRIPTION)72 153.6 Q F0 1.158
205 (The routine)108 165.6 R/F3 10/Times-Italic@0 SF(dbopen)3.658 E F0 1.158
206 (is the library interf)3.658 F 1.158(ace to database \214les.)-.1 F 1.157
207 (One of the supported \214le formats is record)6.158 F 1.159(number \214les.)
208 108 177.6 R 1.159(The general description of the database access methods is in)
209 6.159 F F3(dbopen)3.66 E F0 1.16(\(3\), this manual page).24 F
210 (describes only the recno speci\214c information.)108 189.6 Q 1.944
211 (The record number data structure is either v)108 206.4 R 1.944
212 (ariable or \214x)-.25 F 1.944
213 (ed-length records stored in a \215at-\214le format,)-.15 F 2.04
214 (accessed by the logical record number)108 218.4 R 7.04(.T)-.55 G 2.04(he e)
215 286.31 218.4 R 2.04(xistence of record number \214v)-.15 F 4.54(ei)-.15 G 2.04
216 (mplies the e)442.1 218.4 R 2.04(xistence of)-.15 F .876
217 (records one through four)108 230.4 R 3.376(,a)-.4 G .875
218 (nd the deletion of record number one causes record number \214v)219.684 230.4
219 R 3.375(et)-.15 G 3.375(ob)489.93 230.4 S 3.375(er)503.305 230.4 S(enum-)514.45
220 230.4 Q .282(bered to record number four)108 242.4 R 2.782(,a)-.4 G 2.782(sw)
221 231.19 242.4 S .283(ell as the cursor)245.082 242.4 R 2.783(,i)-.4 G 2.783(fp)
222 316.633 242.4 S .283(ositioned after record number one, to shift do)327.746
223 242.4 R .283(wn one)-.25 F(record.)108 254.4 Q .373
224 (The recno access method speci\214c data structure pro)108 271.2 R .373
225 (vided to)-.15 F F3(dbopen)2.873 E F0 .373(is de\214ned in the <db)2.873 F .373
226 (.h> include \214le as)-.4 F(follo)108 283.2 Q(ws:)-.25 E(typedef struct {)108
227 300 Q(u_long \215ags;)144 312 Q(u_int cachesize;)144 324 Q(u_int psize;)144 336
228 Q(int lorder;)144 348 Q(size_t reclen;)144 360 Q(u_char b)144 372 Q -.25(va)
229 -.15 G(l;).25 E(char *bfname;)144 384 Q 2.5(}R)108 396 S(ECNOINFO;)121.97 396 Q
230 (The elements of this structure are de\214ned as follo)108 412.8 Q(ws:)-.25 E
231 14.61(\215ags The)108 429.6 R(\215ag v)2.5 E(alue is speci\214ed by)-.25 E F3
232 (or)2.5 E F0('ing an).73 E 2.5(yo)-.15 G 2.5(ft)313.2 429.6 S(he follo)321.81
233 429.6 Q(wing v)-.25 E(alues:)-.25 E(R_FIXEDLEN)144 446.4 Q .962
234 (The records are \214x)180 458.4 R .963(ed-length, not byte delimited.)-.15 F
235 .963(The structure element)5.963 F F3 -.37(re)3.463 G(clen).37 E F0
236 (speci\214es)3.463 E .345(the length of the record, and the structure element)
237 180 470.4 R F3(bval)2.844 E F0 .344(is used as the pad character)2.844 F 5.344
238 (.A)-.55 G -.15(ny)530.15 470.4 S .739
239 (records, inserted into the database, that are less than)180 482.4 R F3 -.37
240 (re)3.239 G(clen).37 E F0 .74(bytes long are automatically)3.239 F(padded.)180
241 494.4 Q(R_NOKEY)144 511.2 Q 2.34(In the interf)180 523.2 R 2.34
242 (ace speci\214ed by)-.1 F F3(dbopen)4.84 E F0 4.84(,t).24 G 2.34
243 (he sequential record retrie)344.98 523.2 R -.25(va)-.25 G 4.84<6c8c>.25 G 2.34
244 (lls in both the)478.25 523.2 R(caller')180 535.2 Q 3.556(sk)-.55 G 1.357 -.15
245 (ey a)217.336 535.2 T 1.057(nd data structures.).15 F 1.057
246 (If the R_NOKEY \215ag is speci\214ed, the)6.057 F F3(cur)3.557 E(sor)-.1 E F0
247 (routines)3.557 E .029(are not required to \214ll in the k)180 547.2 R .329
248 -.15(ey s)-.1 H 2.529(tructure. This).15 F .028(permits applications to retrie)
249 2.529 F .328 -.15(ve r)-.25 H .028(ecords at).15 F
250 (the end of \214les without reading all of the interv)180 559.2 Q
251 (ening records.)-.15 E(R_SN)144 576 Q(APSHO)-.35 E(T)-.4 E .964
252 (This \215ag requires that a snapshot of the \214le be tak)180 588 R .965
253 (en when)-.1 F F3(dbopen)3.465 E F0 .965(is called, instead of)3.465 F
254 (permitting an)180 600 Q 2.5(yu)-.15 G
255 (nmodi\214ed records to be read from the original \214le.)245.96 600 Q
256 (cachesize)108 616.8 Q 3.16(As)144 628.8 S .66
257 (uggested maximum size, in bytes, of the memory cache.)158.27 628.8 R .659
258 (This v)5.659 F .659(alue is)-.25 F F2(only)3.159 E F0(advisory)3.159 E 3.159
259 (,a)-.65 G .659(nd the)514.621 628.8 R .046
260 (access method will allocate more memory rather than f)144 640.8 R 2.546
261 (ail. If)-.1 F F3(cac)2.546 E(hesize)-.15 E F0 2.546(is 0)2.546 F .046
262 (\(no size is speci\214ed\) a)2.546 F(def)144 652.8 Q(ault cache is used.)-.1 E
263 12.95(psize The)108 669.6 R .715
264 (recno access method stores the in-memory copies of its records in a btree.)
265 3.216 F .715(This v)5.715 F .715(alue is the)-.25 F .805
266 (size \(in bytes\) of the pages used for nodes in that tree.)144 681.6 R(If)
267 5.805 E F3(psize)3.305 E F0 .806(is 0 \(no page size is speci\214ed\) a)3.305 F
268 1.468
269 (page size is chosen based on the underlying \214le system I/O block size.)144
270 693.6 R(See)6.467 E F3(btr)3.967 E(ee)-.37 E F0 1.467(\(3\) for more).18 F
271 (4.4 Berk)72 732 Q(ele)-.1 E 2.5(yD)-.15 G(istrib)132.57 732 Q 96.815
272 (ution August)-.2 F(18, 1994)2.5 E(1)535 732 Q EP
273 %%Page: 2 2
274 %%BeginPageSetup
276 %%EndPageSetup
277 /F0 10/Times-Roman@0 SF 130.12(RECNO\(3\) BSD)72 48 R(Programmer')2.5 E 2.5(sM)
278 -.55 G 130.12(anual RECNO\(3\))340.17 48 R(information.)144 84 Q 9.62
279 (lorder The)108 100.8 R 1.596(byte order for inte)4.096 F 1.596
280 (gers in the stored database metadata.)-.15 F 1.597
281 (The number should represent the)6.597 F .689(order as an inte)144 112.8 R .689
282 (ger; for e)-.15 F .689(xample, big endian order w)-.15 F .689
283 (ould be the number 4,321.)-.1 F(If)5.689 E/F1 10/Times-Italic@0 SF(lor)3.189 E
284 (der)-.37 E F0 .688(is 0 \(no)3.189 F
285 (order is speci\214ed\) the current host order is used.)144 124.8 Q 9.07
286 (reclen The)108 141.6 R(length of a \214x)2.5 E(ed-length record.)-.15 E -.15
287 (bv)108 158.4 S 16.68(al The)-.1 F .182
288 (delimiting byte to be used to mark the end of a record for v)2.682 F .183
289 (ariable-length records, and the pad)-.25 F .809(character for \214x)144 170.4
290 R .809(ed-length records.)-.15 F .809(If no v)5.809 F .809
291 (alue is speci\214ed, ne)-.25 F .809(wlines \(`)-.25 F(`\\n')-.74 E .808
292 ('\) are used to mark the)-.74 F(end of v)144 182.4 Q
293 (ariable-length records and \214x)-.25 E
294 (ed-length records are padded with spaces.)-.15 E 3.51(bfname The)108 199.2 R
295 .505
296 (recno access method stores the in-memory copies of its records in a btree.)
297 3.005 F .506(If bfname is non-)5.506 F .065(NULL, it speci\214es the name of t\
298 he btree \214le, as if speci\214ed as the \214le name for a dbopen of a btree)
299 144 211.2 R(\214le.)144 223.2 Q .971(The data part of the k)108 240 R -.15(ey)
300 -.1 G .972(/data pair used by the recno access method is the same as other acc\
301 ess methods.).15 F .199(The k)108 252 R .499 -.15(ey i)-.1 H 2.699(sd).15 G(if)
302 157.507 252 Q 2.699(ferent. The)-.25 F F1(data)2.699 E F0 .199
303 (\214eld of the k)2.699 F .499 -.15(ey s)-.1 H .198
304 (hould be a pointer to a memory location of type).15 F F1 -.37(re)2.698 G
305 (cno_t).37 E F0 2.698(,a).68 G(s)536.11 252 Q .505(de\214ned in the <db)108 264
306 R .506(.h> include \214le.)-.4 F .506(This type is normally the lar)5.506 F
307 .506(gest unsigned inte)-.18 F .506(gral type a)-.15 F -.25(va)-.2 G .506
308 (ilable to the).25 F 2.5(implementation. The)108 276 R F1(size)2.5 E F0
309 (\214eld of the k)2.5 E .3 -.15(ey s)-.1 H(hould be the size of that type.).15
310 E .706(Because there can be no meta-data associated with the underlying recno \
311 access method \214les, an)108 292.8 R 3.206(yc)-.15 G(hanges)512.23 292.8 Q
312 1.262(made to the def)108 304.8 R 1.262(ault v)-.1 F 1.262(alues \(e.g. \214x)
313 -.25 F 1.263(ed record length or byte separator v)-.15 F 1.263
314 (alue\) must be e)-.25 F 1.263(xplicitly speci\214ed)-.15 F
315 (each time the \214le is opened.)108 316.8 Q .065(In the interf)108 333.6 R
316 .065(ace speci\214ed by)-.1 F F1(dbopen)2.564 E F0 2.564(,u).24 G .064
317 (sing the)261.548 333.6 R F1(put)2.564 E F0(interf)2.564 E .064
318 (ace to create a ne)-.1 F 2.564(wr)-.25 G .064
319 (ecord will cause the creation of)414.44 333.6 R .755(multiple, empty records \
320 if the record number is more than one greater than the lar)108 345.6 R .755
321 (gest record currently in)-.18 F(the database.)108 357.6 Q/F2 9/Times-Bold@0 SF
322 (ERR)72 374.4 Q(ORS)-.27 E F0(The)108 386.4 Q F1 -.37(re)2.922 G(cno).37 E F0
323 .421(access method routines may f)2.921 F .421(ail and set)-.1 F F1(errno)2.921
324 E F0 .421(for an)2.921 F 2.921(yo)-.15 G 2.921(ft)377.933 386.4 S .421
325 (he errors speci\214ed for the library rou-)386.964 386.4 R(tine)108 398.4 Q F1
326 (dbopen)2.5 E F0(\(3\) or the follo).24 E(wing:)-.25 E([EINV)108 415.2 Q(AL])
327 -1.35 E(An attempt w)144 427.2 Q(as made to add a record to a \214x)-.1 E
328 (ed-length database that w)-.15 E(as too lar)-.1 E(ge to \214t.)-.18 E F2
329 (SEE ALSO)72 444 Q F1(btr)108 456 Q(ee)-.37 E F0(\(3\)).18 E F1(dbopen)2.5 E F0
330 (\(3\),).24 E F1(hash)2.5 E F0(\(3\),).28 E F1(mpool)2.5 E F0(\(3\),).51 E F1
331 2.754(Document Pr)108 480 R 2.754(ocessing in a Relational Database System)-.45
332 F F0 5.255(,M).32 G 2.755(ichael Stonebrak)362.13 480 R(er)-.1 E 5.255(,H)-.4 G
333 2.755(eidi Stettner)454.06 480 R 5.255(,J)-.4 G(oseph)516.67 480 Q
334 (Kalash, Antonin Guttman, Nadene L)108 492 Q
335 (ynn, Memorandum No. UCB/ERL M82/32, May 1982.)-.55 E F2 -.09(BU)72 508.8 S(GS)
336 .09 E F0(Only big and little endian byte order is supported.)108 520.8 Q
337 (4.4 Berk)72 732 Q(ele)-.1 E 2.5(yD)-.15 G(istrib)132.57 732 Q 96.815
338 (ution August)-.2 F(18, 1994)2.5 E(2)535 732 Q EP
339 %%Trailer
341 %%EOF