logo search
TurboProlog / Документация / TOM_1

Удаление нескольких фактов сразу

Предикат retractall удаляет из вашей базы данных все факты, совпада-

ющие с образцом <факт>. Этот предикат всегда завершается успешно. Из

retractall выходные значения получить нельзя. Это означает, что как и в

случае not для неограничеваемых переменных (т.е. переменных, значения ко-

торым еще не присвоены) нужно использовать символ подчеркивания.

retractall имеет следующий формат:

retractall(<факт>[, databaseName])

Также как в случае предикатов assert и retract для проверки типа

можно использовать второй аргумент. И, как в случае предиката retract,

если при вызове retractall используется символ подчеркивания, то из ука-

занной секции database можно удалить все факты.

Следующая цель удаляет все факты о мужчинах из базы данных с фактами

person:

retractall(person(, , male, )).

Следующая цель удаляет все факты из базы mydatabase.

retractall(, mydatabase).