Je travaille actuellement sur un projet ASP.Net MVC pour une classe de génie logiciel. Mon but est de créer un petit système de location de jeux en ligne. J'ai actuellement 3 tables, films, jeux et registrants; et j'utilise LINQ-to-SQL pour définir chacune de ces tables comme des classes pour mon modèle. Jusqu'à présent, j'ai créé des modèles pour les films et les jeux, ce que je voudrais faire lors de la création du modèle de titulaire est de créer une relation entre les titulaires et les films et les jeux. Ce que j'ai essayé jusqu'ici est de définir une clé étrangère entre l'identifiant (la clé primaire dans la table Registrant) et un champ registrantID dans les films et les jeux. Ce que j'ai réalisé, c'est que si je devais supprimer une instance d'un registrant, il supprimerait le film et/ou le jeu associé des autres tables. Ce que je pense à faire est de créer deux modèles distincts définissant rentedGames et rentedMovies et de créer une relation entre ceux-ci et la table Games and Movies afin d'essayer de modéliser un registrant location/retour/achat de films ou de jeux du magasin.Tables de base de données relationnelles
En résumé:
Ce que j'ai jusqu'à présent:
- 3 tables: Registrants, Films et Jeux.
- Modèles LINQ-to-SQL pour mon inventaire de films et de jeux .
Ce que je suis en train d'installer:
- Un modèle pour une location inscrit/retour d'un film et/ou jeu, quand un jeu est loué/retourné, est placé un drapeau à côté de la article dans l'inventaire pour indiquer son statut.
Question:
Est-ce que l'ajout de tables séparées pour modéliser un film/jeu loué éviter que des éléments définis dans mes modèles d'inventaire de être supprimé ?? c'est-à-dire lorsqu'un client retourne un film loué, l'instance de rentedMovie est supprimée, mais le film n'est pas référencé dans l'inventaire de film.
Y at-il une telle chose comme une table connexe ayant un indicateur d'état situé sur l'entrée correspondante , par opposition à l'entrée suppression, chaque fois que l' entrée associée dans l'autre table est modifiée ?? c'est-à-dire lorsqu'un client renvoie un film loué, l'instance de rentedMovie définit un indicateur dans le film auquel il fait référence qu'il est disponible à la location, l'instance de rentedMovie est alors supprimée.