Шаг 92.
Visual Prolog.
Обработка термов

    На этом шаге мы рассмотрим обработку термов.

    Имеется три предиката работы с базами данных, обрабатывающих термы: place, term_delete и ref_term. При обращении к любому из этих предикатов небоходимо объявить домен терма в качестве аргумента. Удобно объявить все термы данной базы как альтернативы одного домена, например:

   domains
      terms_for_my_stock_control_database=
         customer(Customer,Name,ZipCode,Address);
         supplier(SupplierNo,Name,Address);
         parts(PartNo,Description,Price,SupplierNo)

    Здесь нет ограничений на смешивание доменов во внешней базе данных. Одна цепочка может содержать текстовые строки, другая - целые числа, а третья составные и т. д. Однако элементы внешней базы данных не запоминаются вместе с описанием домена, например, целые не обязательно занимают именно два байта. Это ваше дело выбирать из базы данных терм в тот домен, из которого он был записан в базу. Если вы перепутали домены, обычно происходит ошибка при исполнении.

Предикат term_replace/4

    Предикат term_replace заменяет терм (с указателем базы данных Ref) на новый терм с именем Term.

   term_replace(Dbase,Domain,Ref,Term) % (i,i,i,i)

Предикат term_delete/3

    Предикат term_delete удаляет терм с указателем Ref.

   term_delete(Dbase,Domain,Ref)

    Память, занятая термом, будет высвобождена, и в дальнейшем нельзя допускай, ссылки на Ref.

Предикат ref_term/4

    Предикат ref_term связывает Term с термом, который помещен под данным указателем Ref:

   ref_term(Dbase,Domain,Ref,Term) % (i,i,i,o)

    На следующем шаге мы рассмотрим B+ деревья.




Предыдущий шаг Содержание Следующий шаг