1 # SOME DESCRIPTIVE TITLE
2 # Copyright (C) YEAR Free Software Foundation, Inc.
3 # This file is distributed under the same license as the PACKAGE package.
4 # FIRST AUTHOR <EMAIL@ADDRESS>, YEAR.
8 "Project-Id-Version: PACKAGE VERSION\n"
9 "POT-Creation-Date: 2015-01-23 22:22+0900\n"
10 "PO-Revision-Date: 2015-01-11 04:06+0900\n"
11 "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
12 "Language-Team: LANGUAGE <LL@li.org>\n"
15 "Content-Type: text/plain; charset=UTF-8\n"
16 "Content-Transfer-Encoding: 8bit\n"
19 #: build/C/man3/btree.3:36
25 #: build/C/man3/btree.3:36 build/C/man3/hash.3:36 build/C/man3/recno.3:36
31 #: build/C/man3/btree.3:36 build/C/man3/dbopen.3:36 build/C/man3/hash.3:36
32 #: build/C/man3/mpool.3:36 build/C/man3/recno.3:36
34 msgid "Linux Programmer's Manual"
35 msgstr "Linux Programmer's Manual"
38 #: build/C/man3/btree.3:38 build/C/man3/dbopen.3:38 build/C/man3/hash.3:38
39 #: build/C/man3/mpool.3:38 build/C/man3/recno.3:38
45 #: build/C/man3/btree.3:40
46 msgid "btree - btree database access method"
47 msgstr "btree - btree データベースへのアクセスメソッド"
50 #: build/C/man3/btree.3:40 build/C/man3/dbopen.3:40 build/C/man3/hash.3:40
51 #: build/C/man3/mpool.3:40 build/C/man3/recno.3:40
57 #: build/C/man3/btree.3:45 build/C/man3/hash.3:45 build/C/man3/recno.3:45
60 "B<#include E<lt>sys/types.hE<gt>\n"
61 "#include E<lt>db.hE<gt>>\n"
63 "B<#include E<lt>sys/types.hE<gt>\n"
64 "#include E<lt>db.hE<gt>>\n"
67 #: build/C/man3/btree.3:47 build/C/man3/dbopen.3:51 build/C/man3/hash.3:47
68 #: build/C/man3/mpool.3:62 build/C/man3/recno.3:47
74 #: build/C/man3/btree.3:54 build/C/man3/dbopen.3:58 build/C/man3/hash.3:54
75 #: build/C/man3/mpool.3:69 build/C/man3/recno.3:54
77 "I<Note well>: This page documents interfaces provided in glibc up until "
78 "version 2.1. Since version 2.2, glibc no longer provides these interfaces. "
79 "Probably, you are looking for the APIs provided by the I<libdb> library "
83 "このページは、バージョン 2.1 までの glibc が提供するインターフェースに\n"
84 "ついて説明している。バージョン 2.2 以降の glibc では、もはやこれらの\n"
85 "インターフェースは提供されていない。おそらく、このページではなく、\n"
86 "I<libdb> ライブラリが提供する API をお探しなのだろう。"
89 #: build/C/man3/btree.3:62
91 "The routine B<dbopen>(3) is the library interface to database files. One "
92 "of the supported file formats is btree files. The general description of "
93 "the database access methods is in B<dbopen>(3), this manual page describes "
94 "only the btree-specific information."
96 "ルーチン B<dbopen>(3) はデータベースファイルに対するライブラリインターフェー"
97 "スである。 サポートされているファイルフォーマットのひとつに btree ファイルが"
98 "ある。 データベースへのアクセスメソッドに関する一般的な記述は B<dbopen>(3) "
99 "に書かれている。 このマニュアルページでは btree 特有の情報についてのみ記述す"
103 #: build/C/man3/btree.3:65
105 "The btree data structure is a sorted, balanced tree structure storing "
106 "associated key/data pairs."
108 "btree データ構造では、ソートされたバランスツリー構造に 互いに関連づけられた"
112 #: build/C/man3/btree.3:71
114 "The btree access-method-specific data structure provided to B<dbopen>(3) is "
115 "defined in the I<E<lt>db.hE<gt>> include file as follows:"
117 "B<dbopen>(3) に渡される btree アクセスメソッドに特有のデータ構造体は、 "
118 "I<E<lt>db.hE<gt>> インクルードファイルで次のように定義されている。"
121 #: build/C/man3/btree.3:84
125 " unsigned long flags;\n"
126 " unsigned int cachesize;\n"
129 " unsigned int psize;\n"
130 " int (*compare)(const DBT *key1, const DBT *key2);\n"
131 " size_t (*prefix)(const DBT *key1, const DBT *key2);\n"
136 " unsigned long flags;\n"
137 " unsigned int cachesize;\n"
140 " unsigned int psize;\n"
141 " int (*compare)(const DBT *key1, const DBT *key2);\n"
142 " size_t (*prefix)(const DBT *key1, const DBT *key2);\n"
147 #: build/C/man3/btree.3:88 build/C/man3/hash.3:85
148 msgid "The elements of this structure are as follows:"
149 msgstr "この構造体の要素を以下に示す。"
152 #: build/C/man3/btree.3:88 build/C/man3/recno.3:93
158 #: build/C/man3/btree.3:91 build/C/man3/recno.3:97
159 msgid "The flag value is specified by ORing any of the following values:"
160 msgstr "I<flags> の値は以下の値の論理和で指定される。"
163 #: build/C/man3/btree.3:92
169 #: build/C/man3/btree.3:111
171 "Permit duplicate keys in the tree, that is, permit insertion if the key to "
172 "be inserted already exists in the tree. The default behavior, as described "
173 "in B<dbopen>(3), is to overwrite a matching key when inserting a new key or "
174 "to fail if the B<R_NOOVERWRITE> flag is specified. The B<R_DUP> flag is "
175 "overridden by the B<R_NOOVERWRITE> flag, and if the B<R_NOOVERWRITE> flag is "
176 "specified, attempts to insert duplicate keys into the tree will fail."
178 "ツリーの中にキーの重複を許す。すなわちツリーの中に挿入されようとしている キー"
179 "が既に存在していても、その挿入を許可する。デフォルトの動作は B<dbopen>(3) に"
180 "記述されているように、新しいキーが挿入されると一致したキーを上書きする。 ある"
181 "いは B<R_NOOVERWRITE> フラグが指定されていると挿入に失敗する。 B<R_DUP> フラ"
182 "グは B<R_NOOVERWRITE> フラグによって上書きされる。つまり B<R_NOOVERWRITE> フ"
183 "ラグが指定された場合、ツリーに複製キーを挿入しようとすると失敗する。"
186 #: build/C/man3/btree.3:121
188 "If the database contains duplicate keys, the order of retrieval of key/data "
189 "pairs is undefined if the I<get> routine is used, however, I<seq> routine "
190 "calls with the B<R_CURSOR> flag set will always return the logical \"first\" "
191 "of any group of duplicate keys."
193 "データベースにキーの重複があると、 I<get> ルーチンを使った場合のキー/データ対"
194 "の取得順は未定義である。それに対し、 B<R_CURSOR> フラグをセットして I<seq> "
195 "ルーチンを使うと、複製キーのグループの中の 論理的に「最初」のキーを必ず返して"
199 #: build/C/man3/btree.3:122 build/C/man3/hash.3:102 build/C/man3/recno.3:129
202 msgstr "I<cachesize>"
205 #: build/C/man3/btree.3:137
207 "A suggested maximum size (in bytes) of the memory cache. This value is "
208 "I<only> advisory, and the access method will allocate more memory rather "
209 "than fail. Since every search examines the root page of the tree, caching "
210 "the most recently used pages substantially improves access time. In "
211 "addition, physical writes are delayed as long as possible, so a moderate "
212 "cache can reduce the number of I/O operations significantly. Obviously, "
213 "using a cache increases (but only increases) the likelihood of corruption or "
214 "lost data if the system crashes while a tree is being modified. If "
215 "I<cachesize> is 0 (no size is specified), a default cache is used."
217 "想定されるメモリキャッシュの最大サイズ (バイト単位)。 この値は I<あくまで> 参"
218 "考であり、アクセスメソッドはこの値を越えたメモリの 割り当てに成功することもあ"
219 "る。 加えて、物理的な書き込みは可能な限り遅延されるので、 キャッシュの大きさ"
220 "を適度にしておけば I/O 操作の回数をかなり減らすこと ができる。 あきらかに"
221 "キャッシュを使うと、ツリーが変更されている途中で システムがクラッシュした場合"
222 "のデータ破壊やデータロストの可能性は 増える (まあでもそれだけのこと)。 "
223 "I<cachesize> が 0 (サイズが指定されていない) の場合、デフォルトのキャッシュが"
227 #: build/C/man3/btree.3:137
229 msgid "I<maxkeypage>"
230 msgstr "I<maxkeypage>"
232 #. The maximum number of keys which will be stored on any single page.
233 #. Because of the way the btree data structure works,
235 #. must always be greater than or equal to 2.
238 #. is 0 (no maximum number of keys is specified), the page fill factor is
239 #. made as large as possible (which is almost invariably what is wanted).
241 #: build/C/man3/btree.3:149
243 "The maximum number of keys which will be stored on any single page. Not "
244 "currently implemented."
245 msgstr "単一ページに納められる最大キー数である。現在実装されていない。"
248 #: build/C/man3/btree.3:149
250 msgid "I<minkeypage>"
251 msgstr "I<minkeypage>"
254 #: build/C/man3/btree.3:159
256 "The minimum number of keys which will be stored on any single page. This "
257 "value is used to determine which keys will be stored on overflow pages, that "
258 "is, if a key or data item is longer than the pagesize divided by the "
259 "minkeypage value, it will be stored on overflow pages instead of in the page "
260 "itself. If I<minkeypage> is 0 (no minimum number of keys is specified), a "
261 "value of 2 is used."
263 "単一ページに納められる最小キー数である。この値は、どのキーを オーバーフロー"
264 "ページ に納めるか決めるのに使われる。すなわちキーまたはデータが minkeypage の"
265 "値で分割されたページサイズより大きい時、そのページに納め る代わりにオーバーフ"
266 "ローページに納めるということである。 I<minkeypage> が 0 (キーの最小値が指定さ"
267 "れていない) の場合、値として 2 が使われる。"
270 #: build/C/man3/btree.3:159 build/C/man3/recno.3:138
276 #: build/C/man3/btree.3:167
278 "Page size is the size (in bytes) of the pages used for nodes in the tree. "
279 "The minimum page size is 512 bytes and the maximum page size is 64K. If "
280 "I<psize> is 0 (no page size is specified), a page size is chosen based on "
281 "the underlying filesystem I/O block size."
283 "ツリーの中のノードに使われるページサイズ (バイト単位)。 最小値は 512 バイト"
284 "で、最大値は 64K である。 I<psize> が 0 (ページサイズが指定されていない) の場"
285 "合、 ファイルシステムの I/O ブロックサイズに基づいて決められる。"
288 #: build/C/man3/btree.3:167
294 #: build/C/man3/btree.3:179
296 "Compare is the key comparison function. It must return an integer less "
297 "than, equal to, or greater than zero if the first key argument is considered "
298 "to be respectively less than, equal to, or greater than the second key "
299 "argument. The same comparison function must be used on a given tree every "
300 "time it is opened. If I<compare> is NULL (no comparison function is "
301 "specified), the keys are compared lexically, with shorter keys considered "
302 "less than longer keys."
304 "I<compare> はキーの比較関数である。 最初のキー引数に対し、二番目のキー引数が"
305 "大きい場合には正の整数を、 同じ場合にはゼロを、小さい場合には負の整数を返"
306 "す。 ツリーを開く際には、常に同じ比較関数が使われなければならない。 "
307 "I<compare> が NULL (比較関数が指定されていない) の場合、 辞書的に比較される。"
308 "短いキーは長いキーより小さいことになる。"
311 #: build/C/man3/btree.3:179
317 #: build/C/man3/btree.3:198
319 "Prefix is the prefix comparison function. If specified, this routine must "
320 "return the number of bytes of the second key argument which are necessary to "
321 "determine that it is greater than the first key argument. If the keys are "
322 "equal, the key length should be returned. Note, the usefulness of this "
323 "routine is very data-dependent, but, in some data sets can produce "
324 "significantly reduced tree sizes and search times. If I<prefix> is NULL (no "
325 "prefix function is specified), I<and> no comparison function is specified, a "
326 "default lexical comparison routine is used. If I<prefix> is NULL and a "
327 "comparison routine is specified, no prefix comparison is done."
329 "I<prefix> は前置比較関数である。 このルーチンは (指定された場合には)、二番目"
330 "のキー引数の バイト数を返さなくてはならない。これは二番目のキー引数が 一番目"
331 "のキー引数より大きいかどうか決めるのに必要である。 キーが同じ場合、キーの長さ"
332 "が返る。このルーチンが有用かどうかは、 データに強く依存する。しかしデータセッ"
333 "トによっては、明らかにツリー のサイズと検索時間を減らしてくれる。 I<prefix> "
334 "が NULL (prefix 関数が指定されていない) で、 I<かつ> 比較関数が指定されていな"
335 "いと、デフォルトの辞書比較ルーチンが使われる。 I<prefix> が NULL で比較関数が"
336 "指定されている場合は、前置比較は行われない。"
339 #: build/C/man3/btree.3:198 build/C/man3/hash.3:117 build/C/man3/recno.3:150
345 #: build/C/man3/btree.3:206 build/C/man3/recno.3:158
347 "The byte order for integers in the stored database metadata. The number "
348 "should represent the order as an integer; for example, big endian order "
349 "would be the number 4,321. If I<lorder> is 0 (no order is specified), the "
350 "current host order is used."
352 "データベースに格納されているメタデータの整数値のバイトオーダー。 この数字は、"
353 "順序を整数で表したものである。 例えばビッグエンディアンなら、この数値は "
354 "4,321 となる。 I<lorder> が 0 (指定されていない) の場合、現在のホスト で使わ"
358 #: build/C/man3/btree.3:217
360 "If the file already exists (and the B<O_TRUNC> flag is not specified), the "
361 "values specified for the arguments I<flags>, I<lorder> and I<psize> are "
362 "ignored in favor of the values used when the tree was created."
364 "ファイルが既に存在している (または B<O_TRUCT> フラグが指定されていない) と、 "
365 "引き数 I<flag>, I<lorder>, I<psize> に指定された値は無視され、 ツリーが作られ"
369 #: build/C/man3/btree.3:219
371 "Forward sequential scans of a tree are from the least key to the greatest."
372 msgstr "ツリーの前方順検索は、最小キーから最大キーに向かって行われる。"
375 #: build/C/man3/btree.3:225
377 "Space freed up by deleting key/data pairs from the tree is never reclaimed, "
378 "although it is normally made available for reuse. This means that the btree "
379 "storage structure is grow-only. The only solutions are to avoid excessive "
380 "deletions, or to create a fresh tree periodically from a scan of an existing "
383 "ツリーからキー/データ対が削除されることによってできたスペースは、 通常再利用"
384 "できる形になっているが再利用されることは無い。 つまり brtee 記憶構造は肥大す"
385 "る一方である。 対策は過度の削除を避けるか、 存在するツリーを調べて定期的に新"
389 #: build/C/man3/btree.3:231
391 "Searches, insertions, and deletions in a btree will all complete in O lg "
392 "base N where base is the average fill factor. Often, inserting ordered data "
393 "into btrees results in a low fill factor. This implementation has been "
394 "modified to make ordered insertion the best case, resulting in a much better "
395 "than normal page fill factor."
397 "Searches, insertions, and deletions in a btree will all complete in O lg "
398 "base N where base is the average fill factor. Often, inserting ordered data "
399 "into btrees results in a low fill factor. This implementation has been "
400 "modified to make ordered insertion the best case, resulting in a much better "
401 "than normal page fill factor."
404 #: build/C/man3/btree.3:231 build/C/man3/dbopen.3:481 build/C/man3/hash.3:151
405 #: build/C/man3/mpool.3:185 build/C/man3/recno.3:210
411 #: build/C/man3/btree.3:238
413 "The I<btree> access method routines may fail and set I<errno> for any of the "
414 "errors specified for the library routine B<dbopen>(3)."
416 "I<btree> アクセスメソッドルーチンは失敗すると、ライブラリルーチン "
417 "B<dbopen>(3) で定義されているエラーのいずれかを I<errno> として返す。"
420 #: build/C/man3/btree.3:238 build/C/man3/dbopen.3:543 build/C/man3/hash.3:158
421 #: build/C/man3/recno.3:222
427 #: build/C/man3/btree.3:240 build/C/man3/recno.3:224
428 msgid "Only big and little endian byte order is supported."
430 "バイトオーダーとしてはビッグエンディアンとリトルエンディアンのみが サポートさ"
434 #: build/C/man3/btree.3:240 build/C/man3/dbopen.3:554 build/C/man3/hash.3:160
435 #: build/C/man3/mpool.3:230 build/C/man3/recno.3:224
441 #: build/C/man3/btree.3:245
442 msgid "B<dbopen>(3), B<hash>(3), B<mpool>(3), B<recno>(3)"
443 msgstr "B<dbopen>(3), B<hash>(3), B<mpool>(3), B<recno>(3)"
446 #: build/C/man3/btree.3:248
448 "I<The Ubiquitous B-tree>, Douglas Comer, ACM Comput. Surv. 11, 2 (June "
451 "I<The Ubiquitous B-tree>, Douglas Comer, ACM Comput. Surv. 11, 2 (June "
455 #: build/C/man3/btree.3:252
457 "I<Prefix B-trees>, Bayer and Unterauer, ACM Transactions on Database "
458 "Systems, Vol. 2, 1 (March 1977), 11-26."
460 "I<Prefix B-trees>, Bayer and Unterauer, ACM Transactions on Database "
461 "Systems, Vol. 2, 1 (March 1977), 11-26."
464 #: build/C/man3/btree.3:255
466 "I<The Art of Computer Programming Vol. 3: Sorting and Searching>, D.E. "
467 "Knuth, 1968, pp 471-480."
469 "I<The Art of Computer Programming Vol. 3: Sorting and Searching>, D.E. "
470 "Knuth, 1968, pp 471-480."
473 #: build/C/man3/btree.3:255 build/C/man3/dbopen.3:562 build/C/man3/hash.3:171
474 #: build/C/man3/mpool.3:235 build/C/man3/recno.3:233
480 #: build/C/man3/btree.3:263 build/C/man3/dbopen.3:570 build/C/man3/hash.3:179
481 #: build/C/man3/mpool.3:243 build/C/man3/recno.3:241
484 #| "This page is part of release 3.77 of the Linux I<man-pages> project. A "
485 #| "description of the project, information about reporting bugs, and the "
486 #| "latest version of this page, can be found at \\%http://www.kernel.org/doc/"
489 "This page is part of release 3.78 of the Linux I<man-pages> project. A "
490 "description of the project, information about reporting bugs, and the latest "
491 "version of this page, can be found at \\%http://www.kernel.org/doc/man-"
494 "この man ページは Linux I<man-pages> プロジェクトのリリース 3.77 の一部\n"
495 "である。プロジェクトの説明とバグ報告に関する情報は\n"
496 "http://www.kernel.org/doc/man-pages/ に書かれている。"
499 #: build/C/man3/dbopen.3:36
505 #: build/C/man3/dbopen.3:36
511 #: build/C/man3/dbopen.3:40
512 msgid "dbopen - database access methods"
513 msgstr "dbopen - データベースアクセスメソッド"
516 #: build/C/man3/dbopen.3:46
519 "B<#include E<lt>sys/types.hE<gt>>\n"
520 "B<#include E<lt>limits.hE<gt>>\n"
521 "B<#include E<lt>db.hE<gt>>\n"
522 "B<#include E<lt>fcntl.hE<gt>>\n"
524 "B<#include E<lt>sys/types.hE<gt>>\n"
525 "B<#include E<lt>limits.hE<gt>>\n"
526 "B<#include E<lt>db.hE<gt>>\n"
527 "B<#include E<lt>fcntl.hE<gt>>\n"
530 #: build/C/man3/dbopen.3:50
533 "B<DB *dbopen(const char *>I<file>B<, int >I<flags>B<, int >I<mode>B<, DBTYPE >I<type>B<,>\n"
534 "B< const void *>I<openinfo>B<);>\n"
536 "B<DB *dbopen(const char *>I<file>B<, int >I<flags>B<, int >I<mode>B<, DBTYPE >I<type>B<,>\n"
537 "B< const void *>I<openinfo>B<);>\n"
540 #: build/C/man3/dbopen.3:72
542 "B<dbopen>() is the library interface to database files. The supported file "
543 "formats are btree, hashed and UNIX file oriented. The btree format is a "
544 "representation of a sorted, balanced tree structure. The hashed format is "
545 "an extensible, dynamic hashing scheme. The flat-file format is a byte "
546 "stream file with fixed or variable length records. The formats and file-"
547 "format-specific information are described in detail in their respective "
548 "manual pages B<btree>(3), B<hash>(3), and B<recno>(3)."
550 "B<dbopen>() はデータベースファイルに対するライブラリインターフェースであ"
551 "る。 サポートされているファイルフォーマットは btree, hash, UNIX ファイルに指"
552 "向したフォーマット, の 3 つである。 btree フォーマットは、ソートされたバラン"
553 "スツリー構造である。 hashed フォーマットは、拡張可能な動的 hash スキームであ"
554 "る。 フラットファイル (flat-file) フォーマットは、 固定長/可変長のレコードか"
555 "らなるバイトストリームファイルである。 それぞれのフォーマットと、ファイル"
556 "フォーマットに特有の情報は それぞれ対応するマニュアルページ B<btree>(3), "
557 "B<hash>(3), B<recno>(3) に詳細に記述されている。"
560 #: build/C/man3/dbopen.3:81
562 "B<dbopen>() opens I<file> for reading and/or writing. Files never intended "
563 "to be preserved on disk may be created by setting the I<file> argument to "
566 "B<dbopen>() は I<file> を読み込み (読み書き) するためにオープンする。 "
567 "I<file> 引き数を NULL にすれば、 ディスク上に保存したくないファイルを作ること"
570 #. Three additional options may be specified by ORing
576 #. Do the necessary locking in the database to support concurrent access.
577 #. If concurrent access isn't needed or the database is read-only this
578 #. flag should not be set, as it tends to have an associated performance
582 #. Place the underlying memory pool used by the database in shared
584 #. Necessary for concurrent access.
587 #. Support transactions in the database.
588 #. The DB_LOCK and DB_SHMEM flags must be set as well.
590 #: build/C/man3/dbopen.3:121
592 "The I<flags> and I<mode> arguments are as specified to the B<open>(2) "
593 "routine, however, only the B<O_CREAT>, B<O_EXCL>, B<O_EXLOCK>, "
594 "B<O_NONBLOCK>, B<O_RDONLY>, B<O_RDWR>, B<O_SHLOCK>, and B<O_TRUNC> flags are "
595 "meaningful. (Note, opening a database file B<O_WRONLY> is not possible.)"
597 "I<flags> と I<mode> 引き数は B<open>(2) ルーチンで指定するのと同様である。た"
598 "だし 意味を持つフラグは B<O_CREAT>, B<O_EXCL>, B<O_EXLOCK>, B<O_NONBLOCK>, "
599 "B<O_RDONLY>, B<O_RDWR>, B<O_SHLOCK>, B<O_TRUNC> だけである。 (注意: "
600 "B<O_WRONLY> でデータベースファイルを開く事は出来ない)"
603 #: build/C/man3/dbopen.3:134
605 "The I<type> argument is of type I<DBTYPE> (as defined in the I<E<lt>db."
606 "hE<gt>> include file) and may be set to B<DB_BTREE>, B<DB_HASH>, or "
609 "I<type> 引き数は I<DBTYPE> 型である (インクルードファイル I<E<lt>db.hE<gt>> "
610 "で定義されている)。 B<DB_BTREE>, B<DB_HASH>, B<DB_RECNO> のいずれかをセットで"
614 #: build/C/man3/dbopen.3:143
616 "The I<openinfo> argument is a pointer to an access-method-specific structure "
617 "described in the access method's manual page. If I<openinfo> is NULL, each "
618 "access method will use defaults appropriate for the system and the access "
621 "I<openinfo> 引き数はアクセスメソッドに固有な構造体へのポインタである。 それぞ"
622 "れの構造体に関しては各アクセスメソッドの マニュアルページに記述されている。 "
623 "I<openinfo> が NULL の場合、それぞれのアクセスメソッドとシステムとに適合した "
627 #: build/C/man3/dbopen.3:154
629 "B<dbopen>() returns a pointer to a I<DB> structure on success and NULL on "
630 "error. The I<DB> structure is defined in the I<E<lt>db.hE<gt>> include "
631 "file, and contains at least the following fields:"
633 "B<dbopen>() は、成功した場合 I<DB> 構造体へのポインタを、エラーの場合 NULL "
634 "を返す。 I<DB> 構造体は I<E<lt>db.hE<gt>> インクルードファイルの中で定義され"
635 "ており、 少なくとも以下のようなフィールドを持っている。"
638 #: build/C/man3/dbopen.3:170
643 " int (*close)(const DB *db);\n"
644 " int (*del)(const DB *db, const DBT *key, unsigned int flags);\n"
645 " int (*fd)(const DB *db);\n"
646 " int (*get)(const DB *db, DBT *key, DBT *data,\n"
647 " unsigned int flags);\n"
648 " int (*put)(const DB *db, DBT *key, const DBT *data,\n"
649 " unsigned int flags);\n"
650 " int (*sync)(const DB *db, unsigned int flags);\n"
651 " int (*seq)(const DB *db, DBT *key, DBT *data,\n"
652 " unsigned int flags);\n"
657 " int (*close)(const DB *db);\n"
658 " int (*del)(const DB *db, const DBT *key, unsigned int flags);\n"
659 " int (*fd)(const DB *db);\n"
660 " int (*get)(const DB *db, DBT *key, DBT *data,\n"
661 " unsigned int flags);\n"
662 " int (*put)(const DB *db, DBT *key, const DBT *data,\n"
663 " unsigned int flags);\n"
664 " int (*sync)(const DB *db, unsigned int flags);\n"
665 " int (*seq)(const DB *db, DBT *key, DBT *data,\n"
666 " unsigned int flags);\n"
670 #: build/C/man3/dbopen.3:178
672 "These elements describe a database type and a set of functions performing "
673 "various actions. These functions take a pointer to a structure as returned "
674 "by B<dbopen>(), and sometimes one or more pointers to key/data structures "
677 "各要素には、データベースのタイプと、 様々な動作をする関数のセットが記述されて"
678 "いる。 これらの関数は B<dbopen>() によって返される構造体へのポインタを引き数"
679 "にとる。 キー/データ構造体へのポインタやフラグ値を取るものもある。"
682 #: build/C/man3/dbopen.3:178
688 #: build/C/man3/dbopen.3:181
689 msgid "The type of the underlying access method (and file format)."
690 msgstr "用いられているアクセスメソッド (とファイルフォーマット) の型。"
693 #: build/C/man3/dbopen.3:181
699 #: build/C/man3/dbopen.3:195
701 "A pointer to a routine to flush any cached information to disk, free any "
702 "allocated resources, and close the underlying file(s). Since key/data pairs "
703 "may be cached in memory, failing to sync the file with a I<close> or I<sync> "
704 "function may result in inconsistent or lost information. I<close> routines "
705 "return -1 on error (setting I<errno>) and 0 on success."
707 "キャッシュされた情報をディスクに掃きだすためのルーチンへのポインタ。 割り当て"
708 "られたリソースを解放し、利用したファイル(群)をクローズする。 キー/データ対が"
709 "メモリにキャッシュされている場合、 I<close> や I<sync> 関数での同期に失敗する"
710 "と、情報に矛盾が生じるか情報を失う可能性がある。 I<close> ルーチンはエラーの"
711 "場合 -1 を返し (I<errno> をセットする)、成功すると 0 を返す。"
714 #: build/C/man3/dbopen.3:195
720 #: build/C/man3/dbopen.3:198
721 msgid "A pointer to a routine to remove key/data pairs from the database."
722 msgstr "データベースからキー/データ対を削除するルーチンへのポインタ。"
725 #: build/C/man3/dbopen.3:202
726 msgid "The argument I<flag> may be set to the following value:"
727 msgstr "I<flag> 引き数は次の値がセットできる。"
730 #: build/C/man3/dbopen.3:203 build/C/man3/dbopen.3:259
731 #: build/C/man3/dbopen.3:359
737 #: build/C/man3/dbopen.3:207
739 "Delete the record referenced by the cursor. The cursor must have previously "
742 "カーソル (cursor) が参照しているレコードを削除する。 カーソルは前もって初期化"
746 #: build/C/man3/dbopen.3:215
748 "I<delete> routines return -1 on error (setting I<errno>), 0 on success, and "
749 "1 if the specified I<key> was not in the file."
751 "I<delete> ルーチンはエラーの場合 -1 を返し (I<errno> をセットする)、成功する"
752 "と 0 を返す。また指定の I<key> がファイル中に無い場合 1 を返す。"
755 #: build/C/man3/dbopen.3:215
761 #: build/C/man3/dbopen.3:237
763 "A pointer to a routine which returns a file descriptor representative of the "
764 "underlying database. A file descriptor referencing the same file will be "
765 "returned to all processes which call B<dbopen>() with the same I<file> "
766 "name. This file descriptor may be safely used as an argument to the "
767 "B<fcntl>(2) and B<flock>(2) locking functions. The file descriptor is not "
768 "necessarily associated with any of the underlying files used by the access "
769 "method. No file descriptor is available for in memory databases. I<fd> "
770 "routines return -1 on error (setting I<errno>), and the file descriptor on "
773 "用いているデータベースのファイルデスクリプタを返すルーチン へのポインタ。 同"
774 "じファイル名 I<file> で B<dbopen>() を呼び出した全てのプロセスに対して、 そ"
775 "のファイルを示す単一のファイルデスクリプタが返される。 このファイルデスクリプ"
776 "タはロック関数 B<fcntl>(2) と B<flock>(2) への引き数として安全に使用でき"
777 "る。 このファイルデスクリプタは、必ずしもアクセスメソッドで 用いられている"
778 "ファイルのいずれかに関連づけられていなくても良い。 メモリ内のデータベースには"
779 "ファイルデスクリプタは無い。 I<fd> ルーチンはエラーの場合 -1 を返し "
780 "(I<errno> をセットする)、成功するとファイルデスクリプタを返す。"
783 #: build/C/man3/dbopen.3:237
789 #: build/C/man3/dbopen.3:251
791 "A pointer to a routine which is the interface for keyed retrieval from the "
792 "database. The address and length of the data associated with the specified "
793 "I<key> are returned in the structure referenced by I<data>. I<get> routines "
794 "return -1 on error (setting I<errno>), 0 on success, and 1 if the I<key> was "
797 "データベースからキーを用いてデータを取り出すための ルーチンへのポインタ。 指"
798 "定した I<key> に関連づけられたデータのアドレスと長さが I<data> が参照する構造"
799 "体に返される。 I<get> ルーチンはエラーの場合 -1 を返し (I<errno> をセットす"
800 "る)、成功すると 0 を返す。また I<key> がファイル中に無い場合 1 を返す。"
803 #: build/C/man3/dbopen.3:251
809 #: build/C/man3/dbopen.3:254
810 msgid "A pointer to a routine to store key/data pairs in the database."
811 msgstr "キー/データ対をデータベースに納めるルーチンへのポインタ。"
814 #: build/C/man3/dbopen.3:258
815 msgid "The argument I<flag> may be set to one of the following values:"
816 msgstr "I<flag> 引き数には次の値のうちのどれか一つがセットできる。"
819 #: build/C/man3/dbopen.3:263
821 "Replace the key/data pair referenced by the cursor. The cursor must have "
822 "previously been initialized."
824 "カーソルが参照しているキー/データ対を置き換える。 カーソルは前もって初期化さ"
828 #: build/C/man3/dbopen.3:263
834 #: build/C/man3/dbopen.3:274
836 "Append the data immediately after the data referenced by I<key>, creating a "
837 "new key/data pair. The record number of the appended key/data pair is "
838 "returned in the I<key> structure. (Applicable only to the B<DB_RECNO> "
841 "I<key> で参照されるデータの直後に、 新しいキー/データ対を作ってデータを追加す"
842 "る。 追加されたキー/データ対のレコード番号は I<key> 構造体に返される。 "
843 "(B<DB_RECNO> アクセス方法でのみ使える。)"
846 #: build/C/man3/dbopen.3:274
849 msgstr "B<R_IBEFORE>"
852 #: build/C/man3/dbopen.3:285
854 "Insert the data immediately before the data referenced by I<key>, creating a "
855 "new key/data pair. The record number of the inserted key/data pair is "
856 "returned in the I<key> structure. (Applicable only to the B<DB_RECNO> "
859 "I<key> で参照されるデータの直前に、 新しいキー/データ対を作ってデータを挿入す"
860 "る。 追加されたキー/データ対のレコード番号は I<key> 構造体に返される。 "
861 "(B<DB_RECNO> アクセスメソッドでのみ使える。)"
864 #: build/C/man3/dbopen.3:285
866 msgid "B<R_NOOVERWRITE>"
867 msgstr "B<R_NOOVERWRITE>"
870 #: build/C/man3/dbopen.3:288
871 msgid "Enter the new key/data pair only if the key does not previously exist."
872 msgstr "キーがあらかじめ存在しない場合に限り、新しいキー/データ対をいれる。"
875 #: build/C/man3/dbopen.3:288
877 msgid "B<R_SETCURSOR>"
878 msgstr "B<R_SETCURSOR>"
881 #: build/C/man3/dbopen.3:297
883 "Store the key/data pair, setting or initializing the position of the cursor "
884 "to reference it. (Applicable only to the B<DB_BTREE> and B<DB_RECNO> access "
887 "キー/データ対を納め、それを指すようにカーソル位置をセットあるいは初期 化す"
888 "る。 (B<DB_BTREE> と B<DB_RECNO> アクセスメソッドでのみ使える。)"
891 #: build/C/man3/dbopen.3:307
893 "B<R_SETCURSOR> is available only for the B<DB_BTREE> and B<DB_RECNO> access "
894 "methods because it implies that the keys have an inherent order which does "
897 "B<R_SETCURSOR> は B<DB_BTREE> と B<DB_RECNO> アクセスメソッドでしか利用できな"
898 "い。 なぜなら B<R_SETCURSOR> を用いるには、変更される事の無い固有の順序を"
899 "キー が持っていなければならないからである。"
902 #: build/C/man3/dbopen.3:317
904 "B<R_IAFTER> and B<R_IBEFORE> are available only for the B<DB_RECNO> access "
905 "method because they each imply that the access method is able to create new "
906 "keys. This is true only if the keys are ordered and independent, record "
907 "numbers for example."
909 "B<R_IAFTER> と B<R_IBEFORE> は B<DB_RECNO> アクセスメソッドでしか利用できな"
910 "い。 これらを実現するには、アクセスメソッドが 新しいキーを作れなければならな"
911 "いからである。 これが成立するのは、例えば、順序づけらた独立なレコード番号が "
912 "キーになっているような場合だけである。"
915 #: build/C/man3/dbopen.3:322
917 "The default behavior of the I<put> routines is to enter the new key/data "
918 "pair, replacing any previously existing key."
920 "I<put> ルーチンのデフォルトの動作は、新しいキー/データ対を 既に存在するキーを"
924 #: build/C/man3/dbopen.3:330
926 "I<put> routines return -1 on error (setting I<errno>), 0 on success, and 1 "
927 "if the B<R_NOOVERWRITE> I<flag> was set and the key already exists in the "
930 "I<put> ルーチンはエラーの場合 -1 を返し (I<errno> をセットする)、成功すると "
931 "0 を返す。また I<flag> に B<R_NOOVERWRITE> がセットされていてキーが既に存在す"
935 #: build/C/man3/dbopen.3:330
941 #: build/C/man3/dbopen.3:341
943 "A pointer to a routine which is the interface for sequential retrieval from "
944 "the database. The address and length of the key are returned in the "
945 "structure referenced by I<key>, and the address and length of the data are "
946 "returned in the structure referenced by I<data>."
948 "データベースからシーケンシャルにデータを取り出すための ルーチンへのポイン"
949 "タ。 キーのアドレスと長さが I<key> が参照する構造体に返される。データのアドレ"
950 "スと長さが I<data> が参照する構造体に返される。"
953 #: build/C/man3/dbopen.3:354
955 "Sequential key/data pair retrieval may begin at any time, and the position "
956 "of the \"cursor\" is not affected by calls to the I<del>, I<get>, I<put>, or "
957 "I<sync> routines. Modifications to the database during a sequential scan "
958 "will be reflected in the scan, that is, records inserted behind the cursor "
959 "will not be returned while records inserted in front of the cursor will be "
962 "シーケンシャルなキー/データ対の取得はいつでも行える。また 「カーソル」の位置"
963 "は I<del>, I<get>, I<put>, I<sync> ルーチンの呼び出しには影響されない。 シー"
964 "ケンシャルなスキャンの途中に行われたデータベースへの変更は スキャンに反映され"
965 "る。すなわち、カーソルの後ろに挿入されたレコードは 返されないが、カーソルの前"
969 #: build/C/man3/dbopen.3:358
970 msgid "The flag value B<must> be set to one of the following values:"
972 "フラグ値にはB<必ず>以下に示すうちの どれか一つをセットしなければならない。"
975 #: build/C/man3/dbopen.3:372
977 "The data associated with the specified key is returned. This differs from "
978 "the I<get> routines in that it sets or initializes the cursor to the "
979 "location of the key as well. (Note, for the B<DB_BTREE> access method, the "
980 "returned key is not necessarily an exact match for the specified key. The "
981 "returned key is the smallest key greater than or equal to the specified key, "
982 "permitting partial key matches and range searches.)"
984 "指定したキーに関連づけられたデータが返される。 I<get> ルーチンとの違いは、"
985 "カーソルがキーの位置にセットあるいは 初期化される点である。 (注意: "
986 "B<DB_BTREE> アクセス方法では、返されたキーが 必ずしも指定したキーに正しくマッ"
987 "チしないかもしれない。 返されたキーは、指定されたキーに等しいかより大きいもの"
988 "のうち 最小のものになる (部分キーマッチか範囲検索が許可されている場合)。)"
991 #: build/C/man3/dbopen.3:372
997 #: build/C/man3/dbopen.3:376
999 "The first key/data pair of the database is returned, and the cursor is set "
1000 "or initialized to reference it."
1002 "データベースの最初のキー/データ対が返される。 カーソルはそれを参照するように"
1006 #: build/C/man3/dbopen.3:376
1012 #: build/C/man3/dbopen.3:385
1014 "The last key/data pair of the database is returned, and the cursor is set or "
1015 "initialized to reference it. (Applicable only to the B<DB_BTREE> and "
1016 "B<DB_RECNO> access methods.)"
1018 "データベースの最後のキー/データ対が返される。カーソルはそれを参照する ように"
1019 "セットまたは初期化される。 (B<DB_BTREE> と B<DB_RECNO> アクセスメソッドだけで"
1023 #: build/C/man3/dbopen.3:385
1029 #: build/C/man3/dbopen.3:391
1031 "Retrieve the key/data pair immediately after the cursor. If the cursor is "
1032 "not yet set, this is the same as the B<R_FIRST> flag."
1034 "カーソル直後のキー/データ対を取得する。 カーソルがセットされていない場合は "
1035 "B<R_FIRST> フラグと同じ。"
1038 #: build/C/man3/dbopen.3:391
1044 #: build/C/man3/dbopen.3:402
1046 "Retrieve the key/data pair immediately before the cursor. If the cursor is "
1047 "not yet set, this is the same as the B<R_LAST> flag. (Applicable only to "
1048 "the B<DB_BTREE> and B<DB_RECNO> access methods.)"
1050 "カーソル直前のキー/データ対を取得する。 カーソルがセットされていない場合は "
1051 "B<R_LAST> フラグと同じ。 (B<DB_BTREE> と B<DB_RECNO> アクセスメソッドだけで使"
1055 #: build/C/man3/dbopen.3:413
1057 "B<R_LAST> and B<R_PREV> are available only for the B<DB_BTREE> and "
1058 "B<DB_RECNO> access methods because they each imply that the keys have an "
1059 "inherent order which does not change."
1061 "B<R_LAST> と B<R_PREV> は、 B<DB_BTREE> と B<DB_RECNO> アクセス方法でしか使え"
1062 "ない。 なぜなら B<R_SETCURSOR> を用いるには、変更される事の無い固有の順序を"
1063 "キーが持っていなければならないからである。"
1066 #: build/C/man3/dbopen.3:426
1068 "I<seq> routines return -1 on error (setting I<errno>), 0 on success and 1 if "
1069 "there are no key/data pairs less than or greater than the specified or "
1070 "current key. If the B<DB_RECNO> access method is being used, and if the "
1071 "database file is a character special file and no complete key/data pairs are "
1072 "currently available, the I<seq> routines return 2."
1074 "I<seq> ルーチンはエラーの場合 -1 を返し (I<errno> をセットする)、 成功の場合 "
1075 "0 を返す。 指定したキーやカレントキーよりも大きい/小さいキー/データ対がない場"
1076 "合は 1 を返す。 B<DB_RECNO> アクセスメソッドを使っていて、 かつデータベース"
1077 "ファイルが文字型のスペシャルファイルで、 完成しているキー/データ対が無い場合"
1078 "には、 I<seq> ルーチンは 2 を返す。"
1081 #: build/C/man3/dbopen.3:426
1087 #: build/C/man3/dbopen.3:432
1089 "A pointer to a routine to flush any cached information to disk. If the "
1090 "database is in memory only, the I<sync> routine has no effect and will "
1093 "キャッシュされた情報をディスクに掃き出すルーチンへのポインタ。 データベースが"
1094 "メモリの中だけにある場合、 I<sync> ルーチンは何の効果もなく常に成功する。"
1097 #: build/C/man3/dbopen.3:434
1098 msgid "The flag value may be set to the following value:"
1099 msgstr "flag には以下の値がセットできる。"
1102 #: build/C/man3/dbopen.3:435
1104 msgid "B<R_RECNOSYNC>"
1105 msgstr "B<R_RECNOSYNC>"
1108 #: build/C/man3/dbopen.3:447
1110 "If the B<DB_RECNO> access method is being used, this flag causes the sync "
1111 "routine to apply to the btree file which underlies the recno file, not the "
1112 "recno file itself. (See the I<bfname> field of the B<recno>(3) manual page "
1113 "for more information.)"
1115 "B<DB_RECNO> アクセスメソッドを使っている場合に このフラグをセットすると、 "
1116 "recno ファイルそのものにではなく、 そのベースになっている btree ファイルに "
1117 "sync が行われる。 (詳細は B<recno>(3) マニュアルページで I<bfname> フィール"
1118 "ドを説明している部分を参照のこと。)"
1121 #: build/C/man3/dbopen.3:453
1123 "I<sync> routines return -1 on error (setting I<errno>) and 0 on success."
1125 "I<sync> ルーチンはエラーの場合 -1 を返し (I<errno> をセットする)、成功すると "
1129 #: build/C/man3/dbopen.3:453
1131 msgid "Key/data pairs"
1135 #: build/C/man3/dbopen.3:456
1137 "Access to all file types is based on key/data pairs. Both keys and data are "
1138 "represented by the following data structure:"
1140 "全てのファイルタイプにおいて、 キー/データ対をベースにしてアクセスが行われ"
1141 "る。 キーとデータのいずれも、次のデータ構造で記述される。"
1144 #: build/C/man3/dbopen.3:463
1147 "typedef struct {\n"
1152 "typedef struct {\n"
1158 #: build/C/man3/dbopen.3:469
1159 msgid "The elements of the I<DBT> structure are defined as follows:"
1160 msgstr "I<DBT> 構造体の各要素は次のように定義されている。"
1163 #: build/C/man3/dbopen.3:469
1169 #: build/C/man3/dbopen.3:472
1170 msgid "A pointer to a byte string."
1171 msgstr "バイト文字列へのポインタ。"
1174 #: build/C/man3/dbopen.3:472
1180 #: build/C/man3/dbopen.3:475
1181 msgid "The length of the byte string."
1185 #: build/C/man3/dbopen.3:481
1187 "Key and data byte strings may reference strings of essentially unlimited "
1188 "length although any two of them must fit into available memory at the same "
1189 "time. It should be noted that the access methods provide no guarantees "
1190 "about byte string alignment."
1192 "キーとデータのバイト文字列は、 基本的には無制限の長さの文字列を参照できる"
1193 "が、 しかしいずれも使用可能なメモリに収まっていなくてはならない。 アクセスメ"
1194 "ソッドはバイト文字列のアラインメントについては 何も保証していない事に注意する"
1198 #: build/C/man3/dbopen.3:491
1200 "The B<dbopen>() routine may fail and set I<errno> for any of the errors "
1201 "specified for the library routines B<open>(2) and B<malloc>(3) or the "
1204 "B<dbopen>() ルーチンは失敗するとライブラリルーチン B<open>(2) と "
1205 "B<malloc>(3) で指定されているエラーに応じた I<errno> をセットする。あるいは"
1209 #: build/C/man3/dbopen.3:491
1212 msgstr "B<[EFTYPE]>"
1215 #: build/C/man3/dbopen.3:494
1216 msgid "A file is incorrectly formatted."
1217 msgstr "ファイルが正しくフォーマットされていない。"
1220 #: build/C/man3/dbopen.3:494 build/C/man3/mpool.3:198 build/C/man3/recno.3:218
1226 #: build/C/man3/dbopen.3:501
1228 "A parameter has been specified (hash function, pad byte, etc.) that is "
1229 "incompatible with the current file specification or which is not meaningful "
1230 "for the function (for example, use of the cursor without prior "
1231 "initialization) or there is a mismatch between the version number of file "
1234 "指定したパラメータ (ハッシュ関数、バイト埋めなど) が現在のファイル仕様\n"
1235 "に合っていない、パラメータが関数にとって無意味 (例えば、あらかじめ初期\n"
1236 "化しないでカーソルを使うとか)、ファイルとソフトウェアのバージョンが\n"
1240 #: build/C/man3/dbopen.3:513
1242 "The I<close> routines may fail and set I<errno> for any of the errors "
1243 "specified for the library routines B<close>(2), B<read>(2), B<write>(2), "
1244 "B<free>(3), or B<fsync>(2)."
1246 "I<close> ルーチンは失敗するとライブラリルーチン B<close>(2), B<read>(2), "
1247 "B<write>(2), B<free>(3), B<fsync>(2) で指定されているエラーに応じた "
1251 #: build/C/man3/dbopen.3:528
1253 "The I<del>, I<get>, I<put>, and I<seq> routines may fail and set I<errno> "
1254 "for any of the errors specified for the library routines B<read>(2), "
1255 "B<write>(2), B<free>(3) or B<malloc>(3)."
1257 "I<del>, I<get>, I<put>, I<seq> ルーチンは失敗するとライブラリルーチン "
1258 "B<read>(2), B<write>(2), B<free>(3), B<malloc>(3) で指定されているエラーに応"
1259 "じた I<errno> をセットする。"
1262 #: build/C/man3/dbopen.3:536
1264 "The I<fd> routines will fail and set I<errno> to B<ENOENT> for in memory "
1267 "I<fd> ルーチンはメモリ内データベースに対し失敗すると I<errno> に B<ENOENT> を"
1271 #: build/C/man3/dbopen.3:543
1273 "The I<sync> routines may fail and set I<errno> for any of the errors "
1274 "specified for the library routine B<fsync>(2)."
1276 "I<sync> ルーチンは失敗するとライブラリルーチン B<fsync>(2) で指定されている"
1277 "エラーに応じた I<errno> をセットする。"
1280 #: build/C/man3/dbopen.3:548
1282 "The typedef I<DBT> is a mnemonic for \"data base thang\", and was used "
1283 "because no-one could think of a reasonable name that wasn't already used."
1285 "typedef I<DBT> は ``data base thang''の略語であるが、これが使われているの"
1286 "は、 まだ使われていない妥当な名前が思い付かなかったためである。"
1289 #: build/C/man3/dbopen.3:551
1291 "The file descriptor interface is a kludge and will be deleted in a future "
1292 "version of the interface."
1294 "ファイルデスクリプタを使ったやりとりはひどい代物であり、 将来のバージョンでは"
1298 #: build/C/man3/dbopen.3:554
1300 "None of the access methods provide any form of concurrent access, locking, "
1303 "どのアクセスメソッドも、同時アクセス、ロック、トランザクション の仕組みは備え"
1307 #: build/C/man3/dbopen.3:559
1308 msgid "B<btree>(3), B<hash>(3), B<mpool>(3), B<recno>(3)"
1309 msgstr "B<btree>(3), B<hash>(3), B<mpool>(3), B<recno>(3)"
1312 #: build/C/man3/dbopen.3:562
1314 "I<LIBTP: Portable, Modular Transactions for UNIX>, Margo Seltzer, Michael "
1315 "Olson, USENIX proceedings, Winter 1992."
1317 "I<LIBTP: Portable, Modular Transactions for UNIX>, Margo Seltzer, Michael "
1318 "Olson, USENIX proceedings, Winter 1992."
1321 #: build/C/man3/hash.3:36
1327 #: build/C/man3/hash.3:40
1328 msgid "hash - hash database access method"
1329 msgstr "hash - hash データベースへのアクセスメソッド"
1332 #: build/C/man3/hash.3:62
1334 "The routine B<dbopen>(3) is the library interface to database files. One "
1335 "of the supported file formats is hash files. The general description of the "
1336 "database access methods is in B<dbopen>(3), this manual page describes only "
1337 "the hash-specific information."
1339 "ルーチン B<dbopen>(3) はデータベースファイルに対するライブラリインターフェー"
1340 "スである。 サポートされているファイルフォーマットのひとつに hash ファイルがあ"
1341 "る。 データベースへのアクセスメソッドに関する一般的な記述は B<dbopen>(3) に"
1342 "書かれている。 このマニュアルページでは hash 特有の情報についてのみ記述する。"
1345 #: build/C/man3/hash.3:64
1346 msgid "The hash data structure is an extensible, dynamic hashing scheme."
1347 msgstr "hash データ構造は、拡張可能な動的ハッシュスキームである。"
1350 #: build/C/man3/hash.3:70
1352 "The access-method-specific data structure provided to B<dbopen>(3) is "
1353 "defined in the I<E<lt>db.hE<gt>> include file as follows:"
1355 "B<dbopen>(3) に渡される hash アクセスメソッドに特有のデータ構造体は、 "
1356 "I<E<lt>db.hE<gt>> インクルードファイルで以下のように定義されている。"
1359 #: build/C/man3/hash.3:81
1362 "typedef struct {\n"
1363 " unsigned int bsize;\n"
1364 " unsigned int ffactor;\n"
1365 " unsigned int nelem;\n"
1366 " unsigned int cachesize;\n"
1367 " uint32_t (*hash)(const void *, size_t);\n"
1371 "typedef struct {\n"
1372 " unsigned int bsize;\n"
1373 " unsigned int ffactor;\n"
1374 " unsigned int nelem;\n"
1375 " unsigned int cachesize;\n"
1376 " uint32_t (*hash)(const void *, size_t);\n"
1381 #: build/C/man3/hash.3:85
1387 #: build/C/man3/hash.3:90
1389 "defines the hash table bucket size, and is, by default, 256 bytes. It may "
1390 "be preferable to increase the page size for disk-resident tables and tables "
1391 "with large data items."
1393 "hash テーブルバケット (table bucket) のサイズを定義する。 デフォルトは 256 バ"
1394 "イトである。 ディスクに置かれるテーブルやデータアイテムが大きいテーブルでは "
1395 "ページサイズを大きくするほうが良いだろう。"
1398 #: build/C/man3/hash.3:90
1404 #: build/C/man3/hash.3:96
1406 "indicates a desired density within the hash table. It is an approximation "
1407 "of the number of keys allowed to accumulate in any one bucket, determining "
1408 "when the hash table grows or shrinks. The default value is 8."
1410 "ユーザが望む hash テーブル中の密度である。 これはそれぞれのバケットに格納でき"
1411 "るキーの概数であり、 hash テーブルを拡大・縮小を作用する。 デフォルトは 8 で"
1415 #: build/C/man3/hash.3:96
1421 #: build/C/man3/hash.3:102
1423 "is an estimate of the final size of the hash table. If not set or set too "
1424 "low, hash tables will expand gracefully as keys are entered, although a "
1425 "slight performance degradation may be noticed. The default value is 1."
1427 "hash テーブルの最終サイズを大まかに見積もった値である。 この値がセットされて"
1428 "いなかったり、あまりに低くセットされていると、 hash テーブルはキーが入ってく"
1429 "るに応じて拡張される。 しかし少しパフォーマンスが (おそらく気付く程度に) 落ち"
1433 #: build/C/man3/hash.3:108
1435 "is the suggested maximum size, in bytes, of the memory cache. This value is "
1436 "I<only advisory>, and the access method will allocate more memory rather "
1439 "メモリキャッシュの最大値 (バイト単位) の参考値。 この値は B<あくまで参考であ"
1440 "り>、 アクセスメソッドはこの値を越えたメモリの割り当てに成功することもある。"
1443 #: build/C/man3/hash.3:108
1449 #: build/C/man3/hash.3:117
1451 "is a user-defined hash function. Since no hash function performs equally "
1452 "well on all possible data, the user may find that the built-in hash function "
1453 "does poorly on a particular data set. A user-specified hash functions must "
1454 "take two arguments (a pointer to a byte string and a length) and return a 32-"
1455 "bit quantity to be used as the hash value."
1457 "はユーザー定義の hash 関数である。 全てのデータに対してうまく作用する hash 関"
1458 "数と言うのはないから、 特定のデータセットに対しては組み込みの hash 関数では "
1459 "パフォーマンスが低いこともあるかもしれない。 ユーザー定義の hash 関数は二つの"
1460 "引数をとらなくてはならない (バイト文字 列へのポインタと、長さ)。 そして hash "
1461 "値として使われる 32ビットの値を返さなくてはならない。"
1464 #: build/C/man3/hash.3:127
1466 "is the byte order for integers in the stored database metadata. The number "
1467 "should represent the order as an integer; for example, big endian order "
1468 "would be the number 4,321. If I<lorder> is 0 (no order is specified), the "
1469 "current host order is used. If the file already exists, the specified value "
1470 "is ignored and the value specified when the tree was created is used."
1472 "データベースに格納されているメタデータの整数値のバイトオーダー。 この数字は、"
1473 "順序を整数で表したものである。 例えばビッグエンディアンなら、この数値は "
1474 "4,321 となる。 I<lorder> が 0 (指定されていない)場合、現在のホスト で使われて"
1475 "いる並び順が使われる。 ファイルが既に存在する場合、指定した値は無視されツリー"
1476 "が作られ た時に指定されていた値が使われる。"
1479 #: build/C/man3/hash.3:139
1481 "If the file already exists (and the B<O_TRUNC> flag is not specified), the "
1482 "values specified for I<bsize>, I<ffactor>, I<lorder>, and I<nelem> are "
1483 "ignored and the values specified when the tree was created are used."
1485 "ファイルが既に存在している (または B<O_TRUNC> フラグが指定されていない) と、 "
1486 "I<bsize>, I<ffactor>, I<lorder>, I<nelem> に指定された値は無視され、 ハッシュ"
1490 #: build/C/man3/hash.3:144
1492 "If a hash function is specified, I<hash_open> will attempt to determine if "
1493 "the hash function specified is the same as the one with which the database "
1494 "was created, and will fail if it is not."
1496 "hash 関数が指定されると、 I<hash_open> はデータベースが作られた時に指定されて"
1497 "いた hash 関数と今回指定された hash 関数が同じかどうかを調べ、 同じでない場合"
1501 #: build/C/man3/hash.3:151
1503 "Backward-compatible interfaces to the routines described in B<dbm>(3), and "
1504 "B<ndbm>(3) are provided, however these interfaces are not compatible with "
1505 "previous file formats."
1507 "B<dbm>(3), と B<ndbm>(3) に記述されているルーチンへの過去互換を取るためのイ"
1508 "ンターフェイスが 存在する。しかしこれらのインターフェイスは以前のファイル"
1512 #: build/C/man3/hash.3:158
1514 "The I<hash> access method routines may fail and set I<errno> for any of the "
1515 "errors specified for the library routine B<dbopen>(3)."
1517 "I<hash> アクセスメソッドルーチンは、失敗するとライブラリルーチン "
1518 "B<dbopen>(3) で指定されているエラーに応じた I<errno> をセットする。"
1521 #: build/C/man3/hash.3:160
1522 msgid "Only big and little endian byte order are supported."
1524 "バイトオーダーとしてはビッグエンディアンとリトルエンディアンのみが サポートさ"
1528 #: build/C/man3/hash.3:165
1529 msgid "B<btree>(3), B<dbopen>(3), B<mpool>(3), B<recno>(3)"
1530 msgstr "B<btree>(3), B<dbopen>(3), B<mpool>(3), B<recno>(3)"
1533 #: build/C/man3/hash.3:168
1535 "I<Dynamic Hash Tables>, Per-Ake Larson, Communications of the ACM, April "
1538 "I<Dynamic Hash Tables>, Per-Ake Larson, Communications of the ACM, April "
1542 #: build/C/man3/hash.3:171
1544 "I<A New Hash Package for UNIX>, Margo Seltzer, USENIX Proceedings, Winter "
1547 "I<A New Hash Package for UNIX>, Margo Seltzer, USENIX Proceedings, Winter "
1551 #: build/C/man3/mpool.3:36
1557 #: build/C/man3/mpool.3:36
1563 #: build/C/man3/mpool.3:40
1564 msgid "mpool - shared memory buffer pool"
1565 msgstr "mpool - 共有メモリバッファプール"
1568 #: build/C/man3/mpool.3:44
1571 "B<#include E<lt>db.hE<gt>>\n"
1572 "B<#include E<lt>mpool.hE<gt>>\n"
1574 "B<#include E<lt>db.hE<gt>>\n"
1575 "B<#include E<lt>mpool.hE<gt>>\n"
1578 #: build/C/man3/mpool.3:47
1580 msgid "B<MPOOL *mpool_open(DBT *>I<key>B<, int >I<fd>B<, pgno_t >I<pagesize>B<, pgno_t >I<maxcache>B<);>\n"
1581 msgstr "B<MPOOL *mpool_open(DBT *>I<key>B<, int >I<fd>B<, pgno_t >I<pagesize>B<, pgno_t >I<maxcache>B<);>\n"
1584 #: build/C/man3/mpool.3:51
1587 "B<void mpool_filter(MPOOL *>I<mp>B<, void (*pgin)(void *, pgno_t, void *),>\n"
1588 "B< void (*>I<pgout>B<)(void *, pgno_t, void *),>\n"
1589 "B< void *>I<pgcookie>B<);>\n"
1591 "B<void mpool_filter(MPOOL *>I<mp>B<, void (*pgin)(void *, pgno_t, void *),>\n"
1592 "B< void (*>I<pgout>B<)(void *, pgno_t, void *),>\n"
1593 "B< void *>I<pgcookie>B<);>\n"
1596 #: build/C/man3/mpool.3:53
1598 msgid "B<void *mpool_new(MPOOL *>I<mp>B<, pgno_t *>I<pgnoaddr>B<);>\n"
1599 msgstr "B<void *mpool_new(MPOOL *>I<mp>B<, pgno_t *>I<pgnoaddr>B<);>\n"
1602 #: build/C/man3/mpool.3:55
1604 msgid "B<void *mpool_get(MPOOL *>I<mp>B<, pgno_t >I<pgno>B<, unsigned int >I<flags>B<);>\n"
1605 msgstr "B<void *mpool_get(MPOOL *>I<mp>B<, pgno_t >I<pgno>B<, unsigned int >I<flags>B<);>\n"
1608 #: build/C/man3/mpool.3:57
1610 msgid "B<int mpool_put(MPOOL *>I<mp>B<, void *>I<pgaddr>B<, unsigned int >I<flags>B<);>\n"
1611 msgstr "B<int mpool_put(MPOOL *>I<mp>B<, void *>I<pgaddr>B<, unsigned int >I<flags>B<);>\n"
1614 #: build/C/man3/mpool.3:59
1616 msgid "B<int mpool_sync(MPOOL *>I<mp>B<);>\n"
1617 msgstr "B<int mpool_sync(MPOOL *>I<mp>B<);>\n"
1620 #: build/C/man3/mpool.3:61
1622 msgid "B<int mpool_close(MPOOL *>I<mp>B<);>\n"
1623 msgstr "B<int mpool_close(MPOOL *>I<mp>B<);>\n"
1626 #: build/C/man3/mpool.3:74
1628 "I<Mpool> is the library interface intended to provide page oriented buffer "
1629 "management of files. The buffers may be shared between processes."
1631 "I<mpool> は、ファイルに対するページ指向のバッファ管理を実装した ライブラリイ"
1635 #: build/C/man3/mpool.3:95
1637 "The function B<mpool_open>() initializes a memory pool. The I<key> "
1638 "argument is the byte string used to negotiate between multiple processes "
1639 "wishing to share buffers. If the file buffers are mapped in shared memory, "
1640 "all processes using the same key will share the buffers. If I<key> is NULL, "
1641 "the buffers are mapped into private memory. The I<fd> argument is a file "
1642 "descriptor for the underlying file, which must be seekable. If I<key> is "
1643 "non-NULL and matches a file already being mapped, the I<fd> argument is "
1646 "関数 B<mpool_open>() はメモリプールを初期化する。 I<key> 引数はバイト文字列"
1647 "であり、バッファを共有したい複数プロセス間 でのネゴシエーションに使われる。 "
1648 "ファイルバッファが共有メモリにマップされると、 同じキーを使うプロセスは全て"
1649 "バッファを共有する。 I<key> が NULL だと、バッファはプライベートなメモリに割"
1650 "り付けられる。 I<fd> 引数はもとになるファイルのファイルデスクリプタである。 "
1651 "このファイルデスクリプタはシーク可能でなくてはならない。 I<key> が NULL でな"
1652 "く、かつ既にマップされているファイルにマッチした場合、 I<fd> 引数は無視され"
1656 #: build/C/man3/mpool.3:106
1658 "The I<pagesize> argument is the size, in bytes, of the pages into which the "
1659 "file is broken up. The I<maxcache> argument is the maximum number of pages "
1660 "from the underlying file to cache at any one time. This value is not "
1661 "relative to the number of processes which share a file's buffers, but will "
1662 "be the largest value specified by any of the processes sharing the file."
1664 "I<pagesize> 引数はバイト単位でのページサイズであり、ファイルはこのサイズに分"
1665 "割される。 I<maxcache> 引数は基ファイルをキャッシュするときに用いる最大ページ"
1666 "数である。 この値はファイルバッファを共有しているプロセスの数には関係ない"
1667 "が、 ファイルを共有するプロセスが指定したうちの最大値が実際に用いられる。"
1670 #: build/C/man3/mpool.3:122
1672 "The B<mpool_filter>() function is intended to make transparent input and "
1673 "output processing of the pages possible. If the I<pgin> function is "
1674 "specified, it is called each time a buffer is read into the memory pool from "
1675 "the backing file. If the I<pgout> function is specified, it is called each "
1676 "time a buffer is written into the backing file. Both functions are called "
1677 "with the I<pgcookie> pointer, the page number and a pointer to the page to "
1678 "being read or written."
1680 "関数 B<mpool_filter>() は透過的なページ入出力処理を可能にする。 関数 "
1681 "I<pgin> が指定されていると、 ファイルからメモリプールに読み込まれる度にこの関"
1682 "数が呼び出される。 関数 I<pgout> が指定されていと、 バッファからファイルに書"
1683 "き出される度にこの関数が呼び出される。 どちらの関数も、 I<pgcookie> ポイン"
1684 "タ、ページ数、読み書きされるページへのポインタを引数にとる。"
1687 #: build/C/man3/mpool.3:135
1689 "The function B<mpool_new>() takes an I<MPOOL> pointer and an address as "
1690 "arguments. If a new page can be allocated, a pointer to the page is "
1691 "returned and the page number is stored into the I<pgnoaddr> address. "
1692 "Otherwise, NULL is returned and I<errno> is set."
1694 "関数 B<mpool_new>() は I<MPOOL> ポインタとアドレスを引数にとる。 新しいペー"
1695 "ジが割り当て可能な場合、ページへのポインタが返され、 ページ数が I<pgnoaddr> "
1696 "アドレスに納められる。 割り当てが不可能な場合は NULL が返され、 I<errno> が"
1700 #: build/C/man3/mpool.3:148
1702 "The function B<mpool_get>() takes an I<MPOOL> pointer and a page number as "
1703 "arguments. If the page exists, a pointer to the page is returned. "
1704 "Otherwise, NULL is returned and I<errno> is set. The I<flags> argument is "
1705 "not currently used."
1707 "関数 B<mpool_get>() は I<MPOOL> ポインタとページ数を引数にとる。ページが存在"
1708 "していると、 ページへのポインタが返される。 存在していないと NULL が返され、 "
1709 "I<errno> がセットされる。 I<flags> 引き数は現在使用されていない。"
1712 #: build/C/man3/mpool.3:160
1714 "The function B<mpool_put>() unpins the page referenced by I<pgaddr>. "
1715 "I<pgaddr> must be an address previously returned by B<mpool_get>() or "
1716 "B<mpool_new>(). The flag value is specified by ORing any of the following "
1719 "関数 B<mpool_put>() は I<pgaddr> が参照するページを解放する。 I<pgaddr> は以"
1720 "前に B<mpool_get>() か B<mpool_new>() が返したアドレスでなければならない。 "
1721 "flag の値は以下の値の論理和で指定する。"
1724 #: build/C/man3/mpool.3:160
1726 msgid "B<MPOOL_DIRTY>"
1727 msgstr "B<MPOOL_DIRTY>"
1730 #: build/C/man3/mpool.3:163
1731 msgid "The page has been modified and needs to be written to the backing file."
1732 msgstr "ページは変更されており、ファイルに書き出す必要がある。"
1735 #: build/C/man3/mpool.3:166
1736 msgid "B<mpool_put>() returns 0 on success and -1 if an error occurs."
1737 msgstr "B<mpool_put>() は成功すると 0 を、エラーがあると -1 を返す。"
1740 #: build/C/man3/mpool.3:175
1742 "The function B<mpool_sync>() writes all modified pages associated with the "
1743 "I<MPOOL> pointer to the backing file. B<mpool_sync>() returns 0 on success "
1744 "and -1 if an error occurs."
1746 "関数 B<mpool_sync>() は I<MPOOL> ポインタの示すページのうち、 変更されたもの"
1747 "を全てファイルに書き出す。 B<mpool_sync>() は成功すると 0 を、エラーがある"
1751 #: build/C/man3/mpool.3:185
1753 "The B<mpool_close>() function free's up any allocated memory associated "
1754 "with the memory pool cookie. Modified pages are B<not> written to the "
1755 "backing file. B<mpool_close>() returns 0 on success and -1 if an error "
1758 "関数 B<mpool_close>() はメモリプールクッキーの示す割り当て済みのメモリを解放"
1759 "する。 変更されたページはファイルにB<書き出されない>。 I<mpool_close ()> は成"
1760 "功すると 0 を、エラーがあると -1 を返す。"
1763 #: build/C/man3/mpool.3:192
1765 "The B<mpool_open>() function may fail and set I<errno> for any of the "
1766 "errors specified for the library routine B<malloc>(3)."
1768 "関数 B<mpool_open>() は失敗するとライブラリルーチン B<malloc>(3) で指定され"
1769 "ているエラーに応じた I<errno> をセットする。"
1772 #: build/C/man3/mpool.3:198
1774 "The B<mpool_get>() function may fail and set I<errno> for the following:"
1775 msgstr "関数 B<mpool_get>() は失敗すると次のような I<errno> をセットする。"
1778 #: build/C/man3/mpool.3:201
1779 msgid "The requested record doesn't exist."
1780 msgstr "要求のあったレコードは存在しない。"
1783 #: build/C/man3/mpool.3:213
1785 "The B<mpool_new>() and B<mpool_get>() functions may fail and set I<errno> "
1786 "for any of the errors specified for the library routines B<read>(2), "
1787 "B<write>(2), and B<malloc>(3)."
1789 "関数 B<mpool_new>() と B<mpool_get>() は失敗するとライブラリルーチン "
1790 "B<read>(2), B<write>(2), B<malloc>(3) で指定されているエラーに応じた "
1794 #: build/C/man3/mpool.3:220
1796 "The B<mpool_sync>() function may fail and set I<errno> for any of the "
1797 "errors specified for the library routine B<write>(2)."
1799 "関数 B<mpool_sync>() は失敗するとライブラリルーチン B<write>(2) で指定され"
1800 "ているエラーに応じた I<errno> をセットする。"
1803 #: build/C/man3/mpool.3:227
1805 "The B<mpool_close>() function may fail and set I<errno> for any of the "
1806 "errors specified for the library routine B<free>(3)."
1808 "関数 B<mpool_close>() は失敗するとライブラリルーチン B<free>(3) で指定され"
1809 "ているエラーに応じた I<errno> をセットする。"
1812 #: build/C/man3/mpool.3:227
1814 msgid "CONFORMING TO"
1818 #: build/C/man3/mpool.3:230
1819 msgid "Not in POSIX.1-2001. Present on the BSDs."
1820 msgstr "POSIX.1-2001 にはない。 BSD 系に存在する。"
1823 #: build/C/man3/mpool.3:235
1824 msgid "B<btree>(3), B<dbopen>(3), B<hash>(3), B<recno>(3)"
1825 msgstr "B<btree>(3), B<dbopen>(3), B<hash>(3), B<recno>(3)"
1828 #: build/C/man3/recno.3:36
1834 #: build/C/man3/recno.3:40
1835 msgid "recno - record number database access method"
1836 msgstr "recno - レコード番号データベースへのアクセスメソッド"
1839 #: build/C/man3/recno.3:62
1841 "The routine B<dbopen>(3) is the library interface to database files. One "
1842 "of the supported file formats is record number files. The general "
1843 "description of the database access methods is in B<dbopen>(3), this manual "
1844 "page describes only the recno-specific information."
1846 "ルーチン B<dbopen>(3) はデータベースファイルに対するライブラリインターフェー"
1847 "スである。 サポートされているファイルフォーマットの一つに、 レコード番号ファ"
1848 "イル (record number file: recno file) がある。 データベースへのアクセスメソッ"
1849 "ドに関する一般的な記述は B<dbopen>(3), に書かれている。 このマニュアルページ"
1850 "では recno 特有の情報についてのみ記述する。"
1853 #: build/C/man3/recno.3:71
1855 "The record number data structure is either variable or fixed-length records "
1856 "stored in a flat-file format, accessed by the logical record number. The "
1857 "existence of record number five implies the existence of records one through "
1858 "four, and the deletion of record number one causes record number five to be "
1859 "renumbered to record number four, as well as the cursor, if positioned after "
1860 "record number one, to shift down one record."
1862 "レコード番号データ構造は、フラットなファイル形式に格納された 可変長/固定長レ"
1863 "コードからなり、論理レコード番号でアクセスされる。 レコード番号 5 があれば、"
1864 "レコード番号 1 から 4 も存在する。 レコード番号 1 を削除すると、レコード番号 "
1865 "5 は 4 に付け替えられ、 カーソルも移動する。レコード番号 1 以降のものは一つ繰"
1869 #: build/C/man3/recno.3:77
1871 "The recno access-method-specific data structure provided to B<dbopen>(3) is "
1872 "defined in the I<E<lt>db.hE<gt>> include file as follows:"
1874 "B<dbopen>(3) で使う recno アクセスメソッドに特有のデータ構造体は、 "
1875 "I<E<lt>db.hE<gt>> インクルードファイルで次のように定義されている。"
1878 #: build/C/man3/recno.3:89
1881 "typedef struct {\n"
1882 " unsigned long flags;\n"
1883 " unsigned int cachesize;\n"
1884 " unsigned int psize;\n"
1887 " unsigned char bval;\n"
1891 "typedef struct {\n"
1892 " unsigned long flags;\n"
1893 " unsigned int cachesize;\n"
1894 " unsigned int psize;\n"
1897 " unsigned char bval;\n"
1902 #: build/C/man3/recno.3:93
1903 msgid "The elements of this structure are defined as follows:"
1904 msgstr "この構造体の要素を以下に示す。"
1907 #: build/C/man3/recno.3:98
1909 msgid "B<R_FIXEDLEN>"
1910 msgstr "B<R_FIXEDLEN>"
1913 #: build/C/man3/recno.3:109
1915 "The records are fixed-length, not byte delimited. The structure element "
1916 "I<reclen> specifies the length of the record, and the structure element "
1917 "I<bval> is used as the pad character. Any records, inserted into the "
1918 "database, that are less than I<reclen> bytes long are automatically padded."
1920 "レコード長が固定であり、バイト区切りではない。 構造体の要素 I<reclen> はレ"
1921 "コードの長さを指定する。また、要素 I<bval> は埋め文字 (pad character) を指定"
1922 "する。 データベースに入れられたレコードの内 I<reclen> バイトに満たないもので"
1923 "は、残りの部分に埋め文字が自動的に入る。"
1926 #: build/C/man3/recno.3:109
1932 #: build/C/man3/recno.3:122
1934 "In the interface specified by B<dbopen>(3), the sequential record retrieval "
1935 "fills in both the caller's key and data structures. If the B<R_NOKEY> flag "
1936 "is specified, the I<cursor> routines are not required to fill in the key "
1937 "structure. This permits applications to retrieve records at the end of "
1938 "files without reading all of the intervening records."
1940 "B<dbopen>(3) で指定されたインターフェイスでは、シーケンシャルなレコード取得"
1941 "は 呼び出しキーとデータ構造体の両方を埋めていく。 B<R_NOKEY> フラグが指定され"
1942 "ていると、キー構造体を埋めるのに I<cursor> ルーチンを必要としない。 これを用"
1943 "いれば、アプリケーションがファイルの終りの方を取得する際に、 その途中のレコー"
1947 #: build/C/man3/recno.3:122
1949 msgid "B<R_SNAPSHOT>"
1950 msgstr "B<R_SNAPSHOT>"
1953 #: build/C/man3/recno.3:128
1955 "This flag requires that a snapshot of the file be taken when B<dbopen>(3) "
1956 "is called, instead of permitting any unmodified records to be read from the "
1959 "このフラグを指定すると、 B<dbopen>(3) の呼び出しの際、 オリジナルファイルか"
1960 "ら変更されていないレコードを読む代わりに、 ファイルの snapshot を用いる。"
1963 #: build/C/man3/recno.3:138
1965 "A suggested maximum size, in bytes, of the memory cache. This value is "
1966 "B<only> advisory, and the access method will allocate more memory rather "
1967 "than fail. If I<cachesize> is 0 (no size is specified), a default cache is "
1970 "想定されるメモリキャッシュの最大サイズ (バイト単位)。 この値は B<あくまで> 参"
1971 "考であり、アクセスメソッドはこの値を越えたメモリの 割り当てに成功することもあ"
1972 "る。 I<cachesize> が 0 (あるいは指定されていない) の場合、デフォルトのキャッ"
1976 #: build/C/man3/recno.3:150
1978 "The recno access method stores the in-memory copies of its records in a "
1979 "btree. This value is the size (in bytes) of the pages used for nodes in "
1980 "that tree. If I<psize> is 0 (no page size is specified), a page size is "
1981 "chosen based on the underlying filesystem I/O block size. See B<btree>(3) "
1982 "for more information."
1984 "recno アクセスメソッドは、自身のレコードのコピーをメモリ内部に btree で保存し"
1985 "ている。 この値は、その btree 中のノードに対して用いられる ページサイズ (バイ"
1986 "ト単位) である。 I<psize> が 0 (あるいは指定されていない) の場合、 ファイルシ"
1987 "ステムの I/O ブロックサイズを基にして ページサイズが決められる。 詳細は "
1991 #: build/C/man3/recno.3:158
1997 #: build/C/man3/recno.3:161
1998 msgid "The length of a fixed-length record."
1999 msgstr "固定レコード長の長さ。"
2002 #: build/C/man3/recno.3:161
2008 #: build/C/man3/recno.3:169
2010 "The delimiting byte to be used to mark the end of a record for variable-"
2011 "length records, and the pad character for fixed-length records. If no value "
2012 "is specified, newlines (\"\\en\") are used to mark the end of variable-"
2013 "length records and fixed-length records are padded with spaces."
2015 "可変レコード長において、 レコードの終りを示す区切りバイト (区切り文字) であ"
2016 "る。 固定レコード長では埋め文字として使われる。 値が指定されていないと、 可変"
2017 "レコード長のレコードの終りには改行 (\"\\en\") が使われる。 固定レコード長のレ"
2018 "コードは空白 (space) で埋められる。"
2021 #: build/C/man3/recno.3:169
2027 #: build/C/man3/recno.3:179
2029 "The recno access method stores the in-memory copies of its records in a "
2030 "btree. If I<bfname> is non-NULL, it specifies the name of the btree file, "
2031 "as if specified as the filename for a B<dbopen>(3) of a btree file."
2033 "recno アクセスメソッドは、 自身のレコードのコピーをメモリ内部で btree に保存"
2034 "している。 I<bfname> が NULL でない場合、これは btree ファイル名 (btree ファ"
2035 "イルを B<dbopen>(3) する時に指定するファイル名) を指定する。"
2038 #: build/C/man3/recno.3:197
2040 "The data part of the key/data pair used by the I<recno> access method is the "
2041 "same as other access methods. The key is different. The I<data> field of "
2042 "the key should be a pointer to a memory location of type I<recno_t>, as "
2043 "defined in the I<E<lt>db.hE<gt>> include file. This type is normally the "
2044 "largest unsigned integral type available to the implementation. The I<size> "
2045 "field of the key should be the size of that type."
2047 "I<recno> アクセスメソッドで使われるキー/データ対のデータ部分は、 他のアクセス"
2048 "メソッドと同じである。 しかしキーは異なっている。 キーの I<data> フィールド"
2049 "は I<recno_t> 型の、メモリ位置へのポインタでなければならない。 I<recno_t> は "
2050 "I<E<lt>db.hE<gt>> インクルードファイルで定義されている。 この型は通常、その実"
2051 "装で利用可能な最大の符号無し整数である。 キーの I<size> フィールドはその型の"
2055 #: build/C/man3/recno.3:202
2057 "Because there can be no metadata associated with the underlying recno access "
2058 "method files, any changes made to the default values (e.g., fixed record "
2059 "length or byte separator value) must be explicitly specified each time the "
2062 "recno アクセスメソッドのファイルに関連づけられる メタデータは存在できないか"
2063 "ら、 デフォルト値 (固定レコード長やセパレータ文字など) に対する変更はファイ"
2064 "ルを開く毎に明示的に指定しなければならない。"
2067 #: build/C/man3/recno.3:210
2069 "In the interface specified by B<dbopen>(3), using the I<put> interface to "
2070 "create a new record will cause the creation of multiple, empty records if "
2071 "the record number is more than one greater than the largest record currently "
2074 "B<dbopen>(3) で指定されたインターフェイスでは、 I<put> インターフェイスを"
2075 "使って新しいレコードを作成するときに、 指定したレコード番号がデータベース中に"
2076 "存在している最大レコード番号より 一つ以上大きいと、 空のレコードが同時にでき"
2080 #: build/C/man3/recno.3:218
2082 "The I<recno> access method routines may fail and set I<errno> for any of the "
2083 "errors specified for the library routine B<dbopen>(3) or the following:"
2085 "I<recno> アクセスメソッドルーチンは失敗すると B<dbopen>(3) で指定されている"
2086 "エラーに応じた I<errno> か、 あるいは以下に示す I<errno> をセットする。"
2089 #: build/C/man3/recno.3:222
2091 "An attempt was made to add a record to a fixed-length database that was too "
2093 msgstr "固定長データベースにレコードを追加するとき、データが長すぎた。"
2096 #: build/C/man3/recno.3:229
2097 msgid "B<btree>(3), B<dbopen>(3), B<hash>(3), B<mpool>(3)"
2098 msgstr "B<btree>(3), B<dbopen>(3), B<hash>(3), B<mpool>(3)"
2101 #: build/C/man3/recno.3:233
2103 "I<Document Processing in a Relational Database System>, Michael Stonebraker, "
2104 "Heidi Stettner, Joseph Kalash, Antonin Guttman, Nadene Lynn, Memorandum No. "
2105 "UCB/ERL M82/32, May 1982."
2107 "I<Document Processing in a Relational Database System>, Michael Stonebraker, "
2108 "Heidi Stettner, Joseph Kalash, Antonin Guttman, Nadene Lynn, Memorandum No. "
2109 "UCB/ERL M82/32, May 1982."