Я начинаю с пустой базы данных. Мне нужно добавить несколько записей в базу данных, например:
person(John,male)
person(Veronica,female)
person(Jessica,female)
Я добавляю записи, подобные этой:
add_person(N,G):-asserta(person(N,G)).
Howerver, я не хочу добавлять одного и того же человека дважды, поэтому мне нужно проверить перед добавлением.
Я пытаюсь сделать это так:
add_person(N,G):- \+ person(N,G),asserta(person(N,G)).
Проблема в том, что я не могу запросить базу данных, скажем person(John,male)
, если моя база данных пуста. Так что person(N,G)
завершается с ошибкой существования, и я не могу добавить вообще.
Есть мысли?