ForeignKeyConstraint Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma restrição de ação imposta em um conjunto de colunas em uma relação de chave estrangeira/chave primária quando um valor ou uma linha é excluída ou atualizada.
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
- Herança
- Atributos
Exemplos
O exemplo a seguir cria um ForeignKeyConstraint, define algumas de suas propriedades e o adiciona a um DataTable objeto ConstraintCollection.
' 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
Comentários
Um ForeignKeyConstraint restringe a ação executada quando um valor em uma coluna (ou colunas) é excluído ou atualizado. Essa restrição destina-se a ser usada com colunas de chave primária. Em uma relação pai/filho entre duas tabelas, excluir um valor da tabela pai pode afetar as linhas filho de uma das seguintes maneiras.
As linhas filho também podem ser excluídas (uma ação em cascata).
Os valores na coluna filho (ou colunas) podem ser definidos como valores nulos.
Os valores na coluna filho (ou colunas) podem ser definidos como valores padrão.
Uma exceção pode ser gerada.
ForeignKeyConstraint os objetos estão contidos no ConstraintCollection de um DataTable, que é acessado por meio da Constraints propriedade .
As restrições não são impostas, a menos que a EnforceConstraints propriedade esteja definida como true
.
O AcceptRejectRule é imposto sempre que o método de AcceptChanges um DataTable objeto é invocado.
Construtores
ForeignKeyConstraint(DataColumn, DataColumn) |
Inicializa uma nova instância da classe ForeignKeyConstraint com os objetos DataColumn pai e filho especificados. |
ForeignKeyConstraint(DataColumn[], DataColumn[]) |
Inicializa uma nova instância da classe ForeignKeyConstraint com as matrizes especificadas de objetos DataColumn pai e filho. |
ForeignKeyConstraint(String, DataColumn, DataColumn) |
Inicializa uma nova instância da classe ForeignKeyConstraint com o nome especificado e objetos DataColumn pai e filho. |
ForeignKeyConstraint(String, DataColumn[], DataColumn[]) |
Inicializa uma nova instância da classe ForeignKeyConstraint com o nome especificado, bem como matrizes de objetos DataColumn pai e filho. |
ForeignKeyConstraint(String, String, String, String[], String[], AcceptRejectRule, Rule, Rule) |
Este construtor é fornecido para suporte de tempo de design no ambiente do Visual Studio. Os objetos ForeignKeyConstraint criados usando este construtor, em seguida, devem ser adicionados à coleção via AddRange(Constraint[]). Tabelas e colunas com os nomes especificados devem existir no momento em que o método é chamado ou se BeginInit() foi chamado antes de se chamar este construtor, as tabelas e colunas com os nomes especificados devem existir no momento em que EndInit() é chamado. |
ForeignKeyConstraint(String, String, String[], String[], AcceptRejectRule, Rule, Rule) |
Este construtor é fornecido para suporte de tempo de design no ambiente do Visual Studio. Os objetos ForeignKeyConstraint criados usando este construtor, em seguida, devem ser adicionados à coleção via AddRange(Constraint[]). Tabelas e colunas com os nomes especificados devem existir no momento em que o método é chamado ou se BeginInit() foi chamado antes de se chamar este construtor, as tabelas e colunas com os nomes especificados devem existir no momento em que EndInit() é chamado. |
Propriedades
_DataSet |
Obtém o DataSet ao qual esta restrição pertence. (Herdado de Constraint) |
AcceptRejectRule |
Indica a ação que deve ocorrer por essa restrição quando AcceptChanges() é invocado. |
Columns |
Obtém as colunas filho dessa restrição. |
ConstraintName |
O nome de uma restrição no ConstraintCollection. (Herdado de Constraint) |
DeleteRule |
Obtém ou define a ação que ocorre nessa restrição quando uma linha é excluída. |
ExtendedProperties |
Obtém a coleção de propriedades de restrição definidas pelo usuário. (Herdado de Constraint) |
RelatedColumns |
As colunas pai dessa restrição. |
RelatedTable |
Obtém a tabela pai dessa restrição. |
Table |
Obtém a tabela filho dessa restrição. |
UpdateRule |
Obtém ou define a ação que ocorre nessa restrição quando uma linha é atualizada. |
Métodos
CheckStateForProperty() |
Obtém o DataSet ao qual esta restrição pertence. (Herdado de Constraint) |
Equals(Object) |
Obtém um valor que indica se o ForeignKeyConstraint atual é idêntico ao objeto especificado. |
GetHashCode() |
Obtém o código hash desta instância do objeto ForeignKeyConstraint. |
GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
MemberwiseClone() |
Cria uma cópia superficial do Object atual. (Herdado de Object) |
SetDataSet(DataSet) |
Define o DataSet da restrição. (Herdado de Constraint) |
ToString() |
Obtém o ConstraintName, se houver um, como uma cadeia de caracteres. (Herdado de Constraint) |
Aplica-se a
Acesso thread-safe
Este tipo é seguro para operações de leitura e multithread. Você deve sincronizar todas as operações de gravação.