Если вы используете инфраструктуру Cocoa CoreData и определяете управляемую объектную модель, используя SQLite в качестве постоянного хранилища - вы можете указать отношения между вашей моделью и указать правила удаления (такие как каскад или запрет), и они будут выполнены и проверяется при внесении изменений в ваши сущности из Objective-C, и фиксируется обратно в базу данных при сохранении.
Отношения и правила очень похожи на правила внешнего ключа базы данных, но выполняются средой CoreData во время выполнения target-C. База данных SQLite просто используется в качестве хранилища для графа вашего управляемого объекта.
Вот руководство по программированию CoreData на сайте разработчиков Apple:
NB. Этот фреймворк относится к Какао, и в вашем вопросе не упоминается использование Какао, просто Objective-C