データベースからユーザーを削除しようとするとこのエラーが発生します。削除しようとしているユーザーが私はそれを修正する方法や私が間違っている場所を知らない。わからないことは何も変わりますが、私はlaravel親行を削除または更新できません:外部キー制約が失敗します - MYSQL
Usersテーブルを使用して表を作成しただけで包み
CREATE TABLE `users` (
`id` int(10) UNSIGNED NOT NULL,
`firstname` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
`surname` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
`address` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
`postcode` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
`email` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
`password` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
`dateofbirth` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
`role` tinyint(4) NOT NULL,
`remember_token` varchar(100) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
場合は予定表
CREATE TABLE `appointments` (
`id` int(10) UNSIGNED NOT NULL,
`time` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
`date` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
`created_at` timestamp NULL DEFAULT NULL,
`updated_at` timestamp NULL DEFAULT NULL,
`doctor_id` int(10) UNSIGNED NOT NULL,
`user_id` int(10) UNSIGNED NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
ALTER TABLE `appointments`
ADD PRIMARY KEY (`id`),
ADD KEY `appointments_doctor_id_foreign` (`doctor_id`),
ADD KEY `appointments_user_id_foreign` (`user_id`);
ALTER TABLE `appointments`
ADD CONSTRAINT `appointments_doctor_id_foreign` FOREIGN KEY (`doctor_id`) REFERENCES `doctors` (`id`),
ADD CONSTRAINT `appointments_user_id_foreign` FOREIGN KEY (`user_id`) REFERENCES `users` (`id`);
on delete cascadeオプションを使用したとうまくいく、ありがとう – TF120