Compartir vía


propiedad de clave externa

Una propiedad de clave externa del modelo de datos de entidad (EDM) es una propiedad de tipo primitivo (o un conjunto de propiedades de tipo primitivo) en un tipo de entidad que contiene la clave de entidad de otro tipo de entidad.

Una propiedad de clave externa es análoga a una columna de clave externa de una base de datos relacional. De la misma manera que las columnas de clave externa se usan en una base de datos relacional para crear relaciones entre filas en tablas, las propiedades de clave externa de un modelo conceptual se usan para establecer asociaciones entre tipos de entidad. Se usa una restricción de integridad referencial para definir una asociación entre dos tipos de entidad cuando uno de los tipos tiene una propiedad de clave externa.

Ejemplo

En el diagrama siguiente se muestra un modelo conceptual con tres tipos de entidad: Book, Publishery Author. El Book tipo de entidad tiene una propiedad , PublisherId, que hace referencia a la clave de entidad del Publisher tipo de entidad al definir una restricción de integridad referencial en la PublishedBy asociación.

Ejemplo refConstraintModel

El ADO.NET Entity Framework usa un lenguaje específico del dominio (DSL) denominado lenguaje de definición de esquema conceptual (CSDL) para definir modelos conceptuales. El siguiente CSDL usa la propiedad PublisherId de clave externa para definir una restricción de integridad referencial en la PublishedBy asociación que se muestra en el modelo conceptual mostrado anteriormente.

<Association Name="PublishedBy">
  <End Type="BooksModel.Book" Role="Book" Multiplicity="*" >
  </End>
  <End Type="BooksModel.Publisher" Role="Publisher" Multiplicity="1" />
  <ReferentialConstraint>
    <Principal Role="Publisher">
      <PropertyRef Name="Id" />
    </Principal>
    <Dependent Role="Book">
      <PropertyRef Name="PublisherId" />
    </Dependent>
  </ReferentialConstraint>
</Association>

Consulte también