2010-10-12 6 views
1

en utilisant sql server 2008. Mon scénario est le suivant.problème lors de la conception de la base de données

il y a une table utilisateur, avec code d'utilisateur, mot de passe, .... reste des champs

il est quelque chose lié à l'assurance, les cas sont les suivants

  1. utilisateur connecté est assuré (il n'y a qu'une personne ici)
  2. l'utilisateur connecté est assuré et il y en a un de plus assuré par le même utilisateur (il y a deux personnes ici, l'un est connecté et l'autre est assuré, c'est un 0-plusieurs relation)
  3. L'utilisateur connecté n'est pas assuré et il y a un assuré auprès du même utilisateur.

ici mon problème est en enregistrant les données personnelles de l'utilisateur connecté et assuré. Je veux dire qu'il y a les mêmes champs de données pour l'utilisateur connecté et assuré. je veux dire

si l'utilisateur connecté et assuré sont les mêmes, les données personnelles seront les mêmes. (Je ne veux pas répéter les mêmes données dans deux tables différentes)

Si l'utilisateur connecté et assuré sont différents, les données personnelles seront différentes pour les deux.

Comment concevoir les tables de base de données

s'il vous plaît aider ...

+0

Avez-vous une police d'assurance souscrite? – Oded

+0

Oui, j'ai une table de politiques – Harsha

Répondre

1

En supposant que vous avez une table Policy, tenant différentes polices d'assurance, je voudrais créer un grand nombre à plusieurs table liant la table User à la table Policy en utilisant leurs identifiants respectifs. Ceci vous permettra de mettre à jour simplement les détails de l'utilisateur une fois et de lier les politiques aux utilisateurs de la manière que vous voulez.

Pour les scénarios vous:

  1. Connecté utilisateur avec la politique - la table aura l'ID utilisateur avec l'identifiant de la politique.
  2. Utilisateur connecté sans politique, les autres utilisateurs ont une politique - la table contiendra les autres ID utilisateur et l'identifiant de politique pour chacun.
  3. Utilisateur connecté avec une politique et d'autres utilisateurs ont une politique - la table contiendra l'ensemble de ces ID utilisateur et l'identifiant de la politique pour chacun.
+0

mais je ne suis pas supposé stocker les données pseronal de l'utilisateur dans la table des utilisateurs. J'ai besoin d'une autre table pour stocker des données personnelles. – Harsha

+0

@Harsha - D'abord, vous devez ajouter ces détails à la question. Personne qui lit la question ne sait ce que vous êtes ou n'êtes pas censé faire si vous n'expliquez pas. Vous pouvez stocker les informations personnelles dans votre tableau de données personnelles et l'utiliser pour vos jointures. – Oded

+0

vous êtes rite, je ne suis pas bon à poser des questions. laissez-moi essayer ce que vous avez dit – Harsha

Questions connexes