Server for Information Technologies ������ ��������������
������� �������������� ����������
(095) 932-9212, 932-9213, 939-0783
E-mail: [email protected]
������ �������� ����(!) ������������� ���������� CIT Forum CD-ROM

dbminit, fetch, store, delete, firstkey, nextkey

��������
dbminit, fetch, store, delete, firstkey, nextkey - ������������ ��

���������

	typedef struct {
	        char *dptr;
	        int dsize;
	} datum;
	 
	dbminit(file)
	char *file;

	datum fetch(key)
	datum key;

	store(key,content)
	datum key,content;

	delete(key)
	datum key;

	datum firstkey()

	datum nextkey(key)
	datum key;

	dbmclose()

��������
��� ��������� ������� �������� � ���� ������ � ������ �������� "����-����������". ��� �������� �������������� � ����� �������� (� �������� ������) ������ ������ � ������������ � �������� ������ �� ���� ��� ��� ��������� � �������� �������. ������ � �������� ����������� ����� ����� ���������� -ldbm. "�����" (keys) � "����������" (contents) ����������� ����� datum. ����� ���� ������������� ������ �������� dsize, �� ������� ��������� ��������� dptr. ��������� ��� ������ � ������� ASCII, ��� � ������������ �������� ������. ���� ������ ������������� � ���� ������. ���� ���� ������������ ����� ������� � ������� �������� � ����������� .dir. ��� ��������� ���������� ���������� �� ������ ����� � ����������� .pag. ��� ����, ����� ���� ������ ����� ���������, ��� ������ ���� ������� �������� dbminit. � ������� ������ ���� ������� ����� � ������������ .dir � .pag ������ ������������. (������ �� ��������� � ������� �������.)

����� �������� � ������, ���������� ��� ������, ����������� ������ �� fetch; ������������ ��� ������ ��� � ������� store. ���� (� ��������� � ��� ����������) ��������� ������������� delete. �������� ������� ������� ���� ������, ���������� � ����, � ����������� ������������ ������� � ������� ������� firstkey � nextkey. ������� firstkey ���������� ������ ���� � ��. ��� ������ ����� � �� ������� nextkey ���������� ��������� �� ������� �������� �����. ��������� �������� ������ � ��:

	for (key=firstkey(); key.dptr!=NULL; key=nextkey(key))
�������� �� ������������ �������� dbmclose. �� ������ ����������� ����� ��������� �����.

�����������
��� �������, ������������ �������� ���� int, �������� �� ������� �������������� ����������. ��� ��������, ������ 0, �������� �����. ������������, ������������ �������� ���� datum, �������� �� ������� ������� ��������� ��������� dptr.

���������
���� .pag ����� ��������� �������, ������� ��� ������� ������ ����� � ������ ���� ��������� �����������. � ���������� �������� ��� ���� ������ ����������� �������� �������� �����. ����� ����� �� ���������� �������� ���������� (cp, cat, tp, tar, ar) ��� ���������� ������. ��������� dptr, ������������ ����� ��������������, �������� � ����������� ������, ������� ���������� ��� ����������� ����������. ����� ���� �������� � ���� "����/����������" �� ������ ��������� ������ ����������� ����� (1024 �����). ����� ����, ��� ���� "����/����������", ��������� � �������, ������ ���������� � ����� �����. ������� store ���������� ������ � ��� ������, ���� �������� ���� �������� ���������� �������.

������� delete ��������� �� ����������� �������� ������������, ���� � ������ ��� ��������� ��� ������������ �������������. ������� ������������ ������, ���������� ��������� firskey � nextkey, ������������ ���������� �����������, � ����� ����.
Comments: [email protected]
Designed by Andrey Novikov
Copyright © CIT