2010-03-18 11 views
0

J'utilise Microsoft SQL Server 2008 Management Studio pour créer un schéma relationnel en suivant un diagramme entité-relation. (Inclus ci-dessous, sans rapport avec les détails supprimés)Clé étrangère sur une entité faible définie dans MS SQL Server 2008?

entity-relationship diagram with weak entity set http://nicwaller.com/stackoverflow/er_weakentityset.png

Jusqu'à présent, les clés primaires et étrangères ont travaillé comme prévu. Mais lorsque j'essaie de créer une clé étrangère à partir de la relation d'entité takes sur l'ensemble d'entités faibles section, j'obtiens une erreur. Section est identifié par une clé primaire composite dans le contexte de course, qui a course_id comme clé primaire. Par conséquent, la clé primaire de la section est une clé composite à 4 voies. La relation d'entité takes doit faire référence à la section, de sorte qu'elle inclut les 4 attributs principaux de section dans sa propre clé primaire. Lorsque vous essayez d'établir une relation de clé étrangère takes-section, Studio donne l'erreur suivante:

The columns in table 'section' do not match an existing primary key or UNIQUE constraint. 

que je fais quelque chose de mal, ou est-ce une configuration non prise en charge? Je peux fournir plus de détails ou le schéma SQL si nécessaire.

Répondre

0

L'ordre des attributs dans les clés primaire et étrangère doit être conservé.

(Je recevais une erreur car les attributs de la clé étrangère étaient spécifiés dans un ordre différent de celui de la clé primaire.)