Compartir por


ForeignKeyConstraint Clase

Definición

Representa una restricción de acción aplicada en un conjunto de columnas de una relación de clave principal o clave externa cuando se elimina o actualiza un valor o fila.

public ref class ForeignKeyConstraint : System::Data::Constraint
public class ForeignKeyConstraint : System.Data.Constraint
[System.Serializable]
public class ForeignKeyConstraint : System.Data.Constraint
type ForeignKeyConstraint = class
    inherit Constraint
[<System.Serializable>]
type ForeignKeyConstraint = class
    inherit Constraint
Public Class ForeignKeyConstraint
Inherits Constraint
Herencia
ForeignKeyConstraint
Atributos

Ejemplos

En el ejemplo siguiente se crea un ForeignKeyConstraint, se establecen algunas de sus propiedades y se agregan a la clase de ConstraintCollectionun DataTable objeto .

' The next line goes into the Declarations section of the module:
' SuppliersProducts is a class derived from DataSet.
Private suppliersProducts As SuppliersProducts

Private Sub CreateConstraint()
    ' Declare parent column and child column variables.
    Dim parentColumn As DataColumn
    Dim childColumn As DataColumn
    Dim fkeyConstraint As ForeignKeyConstraint

    ' Set parent and child column variables.
    parentColumn = suppliersProducts.Tables("Suppliers").Columns("SupplierID")
    childColumn = suppliersProducts.Tables("Products").Columns("SupplierID")
    fkeyConstraint = New ForeignKeyConstraint( _
        "SupplierFKConstraint", parentColumn, childColumn)

    ' Set null values when a value is deleted.
    fkeyConstraint.DeleteRule = Rule.SetNull
    fkeyConstraint.UpdateRule = Rule.Cascade
    fkeyConstraint.AcceptRejectRule = AcceptRejectRule.Cascade

    ' Add the constraint, and set EnforceConstraints to true.
    suppliersProducts.Tables("Products").Constraints.Add(fkeyConstraint)
    suppliersProducts.EnforceConstraints = True
End Sub

Comentarios

Restringe ForeignKeyConstraint la acción realizada cuando se elimina o actualiza un valor de una columna (o columnas). Esta restricción está pensada para usarse con columnas de clave principal. En una relación primaria o secundaria entre dos tablas, la eliminación de un valor de la tabla primaria puede afectar a las filas secundarias de una de las maneras siguientes.

  • Las filas secundarias también se pueden eliminar (una acción en cascada).

  • Los valores de la columna secundaria (o columnas) se pueden establecer en valores NULL.

  • Los valores de la columna secundaria (o columnas) se pueden establecer en valores predeterminados.

  • Se puede generar una excepción.

ForeignKeyConstraint los objetos se encuentran en de ConstraintCollection un DataTableobjeto , al que se accede a través de la Constraints propiedad .

Las restricciones no se aplican a menos que la EnforceConstraints propiedad esté establecida trueen .

AcceptRejectRule se aplica cada vez que se invoca el método de AcceptChanges un DataTable objeto.

Constructores

Nombre Description
ForeignKeyConstraint(DataColumn, DataColumn)

Inicializa una nueva instancia de la ForeignKeyConstraint clase con los objetos primarios y secundarios DataColumn especificados.

ForeignKeyConstraint(DataColumn[], DataColumn[])

Inicializa una nueva instancia de la ForeignKeyConstraint clase con las matrices especificadas de objetos primarios y secundarios DataColumn .

ForeignKeyConstraint(String, DataColumn, DataColumn)

Inicializa una nueva instancia de la ForeignKeyConstraint clase con el nombre, los objetos primarios y secundarios DataColumn especificados.

ForeignKeyConstraint(String, DataColumn[], DataColumn[])

Inicializa una nueva instancia de la ForeignKeyConstraint clase con el nombre especificado y matrices de objetos primarios y secundarios DataColumn .

ForeignKeyConstraint(String, String, String, String[], String[], AcceptRejectRule, Rule, Rule)

Este constructor se proporciona para la compatibilidad con tiempo de diseño en el entorno de Visual Studio. ForeignKeyConstraint Los objetos creados mediante este constructor deben agregarse a la colección a través AddRange(Constraint[])de . Las tablas y columnas con los nombres especificados deben existir en el momento en que se llama al método, o si BeginInit() se ha llamado antes de llamar a este constructor, las tablas y columnas con los nombres especificados deben existir en el momento en que EndInit() se llama a .

ForeignKeyConstraint(String, String, String[], String[], AcceptRejectRule, Rule, Rule)

Este constructor se proporciona para la compatibilidad con tiempo de diseño en el entorno de Visual Studio. ForeignKeyConstraint Los objetos creados mediante este constructor deben agregarse a la colección a través AddRange(Constraint[])de . Las tablas y columnas con los nombres especificados deben existir en el momento en que se llama al método, o si BeginInit() se ha llamado antes de llamar a este constructor, las tablas y columnas con los nombres especificados deben existir en el momento en que EndInit() se llama a .

Propiedades

Nombre Description
_DataSet

Obtiene al DataSet que pertenece esta restricción.

(Heredado de Constraint)
AcceptRejectRule

Indica la acción que debe tener lugar en esta restricción cuando AcceptChanges() se invoca.

Columns

Obtiene las columnas secundarias de esta restricción.

ConstraintName

Nombre de una restricción en .ConstraintCollection

(Heredado de Constraint)
DeleteRule

Obtiene o establece la acción que se produce en esta restricción cuando se elimina una fila.

ExtendedProperties

Obtiene la colección de propiedades de restricción definidas por el usuario.

(Heredado de Constraint)
RelatedColumns

Columnas primarias de esta restricción.

RelatedTable

Obtiene la tabla primaria de esta restricción.

Table

Obtiene la tabla secundaria de esta restricción.

UpdateRule

Obtiene o establece la acción que se produce en esta restricción cuando se actualiza una fila.

Métodos

Nombre Description
CheckStateForProperty()

Obtiene al DataSet que pertenece esta restricción.

(Heredado de Constraint)
Equals(Object)

Obtiene un valor que indica si el actual ForeignKeyConstraint es idéntico al objeto especificado.

GetHashCode()

Obtiene el código hash de esta instancia del ForeignKeyConstraint objeto .

GetType()

Obtiene el Type de la instancia actual.

(Heredado de Object)
MemberwiseClone()

Crea una copia superficial del Objectactual.

(Heredado de Object)
SetDataSet(DataSet)

Establece el valor de DataSetla restricción .

(Heredado de Constraint)
ToString()

Obtiene , ConstraintNamesi hay una, como una cadena.

(Heredado de Constraint)

Se aplica a

Seguridad para subprocesos

Este tipo es seguro para las operaciones de lectura multiproceso. Debe sincronizar las operaciones de escritura.

Consulte también