Bonjour
Je débute sur les connexions avec une bases de donnée Je ne comprend pas comment traduire cette syntaxe en SQL
1$table->foreignId('creator_user_id')->nullable()->default(null)->references('id')->on('users')->constrained()->onDelete('set null');
Merci pour vos explications
Hello!
Ici, tu tente de faire une liaison entre deux tables via deux colonnes.
Tu es en train de créer une FOREIGN KEY
.
Cette clef étrangère doit être insérée dans la table que tu es en train de manipulé (et pas spécifié dans ton exemple) et fait une référence à la colonne id
de la table users
. Voila à quoi ça ressemble dans les grandes lignes en SQL:
1ALTER TABLE `your_table_name`2ADD COLUMN `creator_user_id` BIGINT UNSIGNED NULL DEFAULT NULL,3ADD CONSTRAINT `your_table_name_creator_user_id_foreign`4FOREIGN KEY (`creator_user_id`) REFERENCES `users`(`id`)5ON DELETE SET NULL;
Note que your_table_name
est la table que tu manipule et qui n'est pas spécifié dans ton exemple, c'est dans cette table qu'on tente d'ajouter la colonne creator_user_id
qui est soit null soit l'id d'un utilisateur qui existe dans la table users
.