ForeignKeyConstraint Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
- 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.