Это старый вопрос, но лучше предоставить обновленный ответ.
Начиная с API 16 (Aka Android 4.1), можно включить ограничения FK с помощью SQLiteDatabase#setForeignKeyConstraintsEnabled(boolean enabled)
.
Как для документов :
Устанавливает, включены ли ограничения внешнего ключа для базы данных.
По умолчанию внешнийКлючевые ограничения не применяются базой данных. Этот метод позволяет приложению разрешать ограничения внешнего ключа.Он должен вызываться каждый раз, когда база данных открывается, чтобы убедиться, что ограничения внешнего ключа включены для сеанса.
Чтобы это работало, внутри пользовательского SQLiteOpenHelper
используйте следующий код:
@Override
public void onConfigure(SQLiteDatabase db) {
// Enable FK constraints.
db.setForeignKeyConstraintsEnabled(true);
super.onConfigure(db);
}