Я пытаюсь удалить данные в таблице 3 отношений, используя laravel 5.7, когда я пытаюсь сделать это в таблице 2 отношений, она работает хорошо, но когда я пытаюсь это сделать в таблице 3 отношений, она не работает.
это моя таблица выглядит так:
таблица 1: group_access
|----|------------|
| id | group_name |
|----|------------|
| 67 | test |
|----|------------|
таблица 2: fa_group_access
|----|-----------------|--------|
| id | group_access_id | name |
|----|-----------------|--------|
| 1 | 67 | john |
|----|-----------------|--------|
таблица 3: survey_group_access
|----|-----------------|---------------|
| id | group_access_id | code_survey |
|----|-----------------|---------------|
| 1 | 67 | SF-001 |
|----|-----------------|---------------|
и это моя функция в контроллере для удаления данных:
public function destroy($id)
{
$group = Groups::findOrFail($id);
if($group->delete())
{
Survey_group_access::where('group_access_id', $id)->get();
FA_Group_Access::where('group_access_id', $id)->get();
return response()->json(['status'=>'success']);
}
}
и я получилошибка sql следующим образом:
SQLSTATE [23000]: [Microsoft] [Драйвер ODBC 11 для SQL Server] [SQL Server] Оператор DELETE конфликтует с ограничением REFERENCE "survey_group_access_group_access_id_foreign".Конфликт произошел в базе данных «aetra2», таблице «dbo.survey_group_access», столбце «group_access_id».(SQL: удалить из [group_access], где [id] = 67)
Как исправить эту ошибку?