ConstraintCollection.Add Método

Definição

Adiciona um Constraint objeto à coleção.

Sobrecargas

Nome Description
Add(Constraint)

Adiciona o objeto especificado Constraint à coleção.

Add(String, DataColumn, Boolean)

Constrói um novo UniqueConstraint com o nome DataColumnespecificado e um valor que indica se a coluna é uma chave primária e a adiciona à coleção.

Add(String, DataColumn, DataColumn)

Constrói um novo ForeignKeyConstraint com o nome, a coluna pai e a coluna filho especificados e adiciona a restrição à coleção.

Add(String, DataColumn[], Boolean)

Constrói um novo UniqueConstraint com o nome, a matriz de DataColumn objetos e o valor especificados que indica se a coluna é uma chave primária e a adiciona à coleção.

Add(String, DataColumn[], DataColumn[])

Constrói um novo ForeignKeyConstraint, com as matrizes especificadas de colunas pai e colunas filho, e adiciona a restrição à coleção.

Add(Constraint)

Adiciona o objeto especificado Constraint à coleção.

public:
 void Add(System::Data::Constraint ^ constraint);
public void Add(System.Data.Constraint constraint);
member this.Add : System.Data.Constraint -> unit
Public Sub Add (constraint As Constraint)

Parâmetros

constraint
Constraint

O Constraint para adicionar.

Exceções

O constraint argumento é nulo.

A restrição já pertence a essa coleção ou pertence a outra coleção.

A coleção já tem uma restrição com o mesmo nome. (A comparação não diferencia maiúsculas de minúsculas.)

Exemplos

O exemplo a ConstraintCollection seguir adiciona um UniqueConstraint ao de um DataTable.

private void AddConstraint(DataTable table)
{
    UniqueConstraint uniqueConstraint;
    // Assuming a column named "UniqueColumn" exists, and
    // its Unique property is true.
    uniqueConstraint = new UniqueConstraint(
        table.Columns["UniqueColumn"]);
    table.Constraints.Add(uniqueConstraint);
}
Private Sub AddConstraint(table As DataTable)
    Dim uniqueConstraint As UniqueConstraint
    ' Assuming a column named "UniqueColumn" exists, and 
    ' its Unique property is true.
    uniqueConstraint = _
       New UniqueConstraint(table.Columns("UniqueColumn"))
    table.Constraints.Add(uniqueConstraint)
End Sub

Comentários

Se a coleção for alterada com êxito adicionando ou removendo restrições, o CollectionChanged evento ocorrerá.

Confira também

Aplica-se a

Add(String, DataColumn, Boolean)

Constrói um novo UniqueConstraint com o nome DataColumnespecificado e um valor que indica se a coluna é uma chave primária e a adiciona à coleção.

public:
 virtual System::Data::Constraint ^ Add(System::String ^ name, System::Data::DataColumn ^ column, bool primaryKey);
public:
 System::Data::Constraint ^ Add(System::String ^ name, System::Data::DataColumn ^ column, bool primaryKey);
public virtual System.Data.Constraint Add(string name, System.Data.DataColumn column, bool primaryKey);
public System.Data.Constraint Add(string name, System.Data.DataColumn column, bool primaryKey);
abstract member Add : string * System.Data.DataColumn * bool -> System.Data.Constraint
override this.Add : string * System.Data.DataColumn * bool -> System.Data.Constraint
member this.Add : string * System.Data.DataColumn * bool -> System.Data.Constraint
Public Overridable Function Add (name As String, column As DataColumn, primaryKey As Boolean) As Constraint
Public Function Add (name As String, column As DataColumn, primaryKey As Boolean) As Constraint

Parâmetros

name
String

O nome do UniqueConstraint.

column
DataColumn

A DataColumn que a restrição se aplica.

primaryKey
Boolean

Especifica se a coluna deve ser a chave primária. Se true, a coluna será uma coluna de chave primária.

Retornos

Um novo UniqueConstraint.

Exceções

A restrição já pertence a essa coleção.

-Ou-

A restrição pertence a outra coleção.

A coleção já tem uma restrição com o nome especificado. (A comparação não diferencia maiúsculas de minúsculas.)

Exemplos

O exemplo a seguir usa o Add método para criar e adicionar um novo UniqueConstraint a um ConstraintCollection.

private void AddUniqueConstraint(DataTable table){
   table.Constraints.Add("idConstraint", table.Columns["id"], true);
}
Private Sub AddUniqueConstraint(table As DataTable)
    table.Constraints.Add("idConstraint", table.Columns("id"), True)
End Sub

Comentários

O CollectionChanged evento ocorrerá se a restrição for adicionada com êxito.

Confira também

Aplica-se a

Add(String, DataColumn, DataColumn)

Constrói um novo ForeignKeyConstraint com o nome, a coluna pai e a coluna filho especificados e adiciona a restrição à coleção.

public:
 virtual System::Data::Constraint ^ Add(System::String ^ name, System::Data::DataColumn ^ primaryKeyColumn, System::Data::DataColumn ^ foreignKeyColumn);
public:
 System::Data::Constraint ^ Add(System::String ^ name, System::Data::DataColumn ^ primaryKeyColumn, System::Data::DataColumn ^ foreignKeyColumn);
public virtual System.Data.Constraint Add(string name, System.Data.DataColumn primaryKeyColumn, System.Data.DataColumn foreignKeyColumn);
public System.Data.Constraint Add(string name, System.Data.DataColumn primaryKeyColumn, System.Data.DataColumn foreignKeyColumn);
abstract member Add : string * System.Data.DataColumn * System.Data.DataColumn -> System.Data.Constraint
override this.Add : string * System.Data.DataColumn * System.Data.DataColumn -> System.Data.Constraint
member this.Add : string * System.Data.DataColumn * System.Data.DataColumn -> System.Data.Constraint
Public Overridable Function Add (name As String, primaryKeyColumn As DataColumn, foreignKeyColumn As DataColumn) As Constraint
Public Function Add (name As String, primaryKeyColumn As DataColumn, foreignKeyColumn As DataColumn) As Constraint

Parâmetros

name
String

O nome do ForeignKeyConstraint.

primaryKeyColumn
DataColumn

A chave primária, ou pai, DataColumn.

foreignKeyColumn
DataColumn

A chave estrangeira, ou filho, DataColumn.

Retornos

Um novo ForeignKeyConstraint.

Exemplos

O exemplo a ConstraintCollection seguir adiciona uma nova ForeignKeyConstraint ao de um DataTable.

private void AddForeignConstraint(DataSet dataSet)
{
    try
    {
        DataColumn parentColumn =
            dataSet.Tables["Suppliers"].Columns["SupplierID"];
        DataColumn childColumn =
            dataSet.Tables["Products"].Columns["SupplierID"];
        dataSet.Tables["Products"].Constraints.Add
            ("ProductsSuppliers", parentColumn, childColumn);
    }
    catch(Exception ex)
    {
        // In case the constraint already exists,
        // catch the collision here and respond.
        Console.WriteLine("Exception of type {0} occurred.",
            ex.GetType());
    }
}
Private Sub AddForeignConstraint(dataSet As DataSet)
    Try
        Dim parentColumn As DataColumn = _
            dataSet.Tables("Suppliers").Columns("SupplierID")
        Dim childColumn As DataColumn = _
            dataSet.Tables("Products").Columns("SupplierID")
        dataSet.Tables("Products").Constraints.Add _
            ("ProductsSuppliers", parentColumn, childColumn)
        
    Catch ex As Exception
        ' In case the constraint already exists, 
        ' catch the collision here and respond.
        Console.WriteLine("Exception of type {0} occurred.", _
            ex.GetType().ToString())
    End Try
End Sub

Comentários

O CollectionChanged evento ocorrerá se a restrição for adicionada com êxito.

Aplica-se a

Add(String, DataColumn[], Boolean)

Constrói um novo UniqueConstraint com o nome, a matriz de DataColumn objetos e o valor especificados que indica se a coluna é uma chave primária e a adiciona à coleção.

public:
 virtual System::Data::Constraint ^ Add(System::String ^ name, cli::array <System::Data::DataColumn ^> ^ columns, bool primaryKey);
public:
 System::Data::Constraint ^ Add(System::String ^ name, cli::array <System::Data::DataColumn ^> ^ columns, bool primaryKey);
public virtual System.Data.Constraint Add(string name, System.Data.DataColumn[] columns, bool primaryKey);
public System.Data.Constraint Add(string name, System.Data.DataColumn[] columns, bool primaryKey);
abstract member Add : string * System.Data.DataColumn[] * bool -> System.Data.Constraint
override this.Add : string * System.Data.DataColumn[] * bool -> System.Data.Constraint
member this.Add : string * System.Data.DataColumn[] * bool -> System.Data.Constraint
Public Overridable Function Add (name As String, columns As DataColumn(), primaryKey As Boolean) As Constraint
Public Function Add (name As String, columns As DataColumn(), primaryKey As Boolean) As Constraint

Parâmetros

name
String

O nome do UniqueConstraint.

columns
DataColumn[]

Uma matriz de DataColumn objetos à qual a restrição se aplica.

primaryKey
Boolean

Especifica se a coluna deve ser a chave primária. Se true, a coluna será uma coluna de chave primária.

Retornos

Um novo UniqueConstraint.

Exceções

A restrição já pertence a essa coleção.

-Ou-

A restrição pertence a outra coleção.

A coleção já tem uma restrição com o nome especificado. (A comparação não diferencia maiúsculas de minúsculas.)

Exemplos

O exemplo a seguir cria uma matriz de DataColumn objetos que são usados para criar um novo UniqueConstraint em um determinado DataTable.

private void AddUniqueConstraint(DataTable table)
{
    DataColumn[] columns = new DataColumn[1];
    columns[0] = table.Columns["ID"];
    columns[1] = table.Columns["Name"];
    table.Constraints.Add("idNameConstraint", columns, true);
}
Private Sub AddUniqueConstraint(table As DataTable)
    Dim columns(1) As DataColumn
    columns(0) = table.Columns("ID")
    columns(1) = table.Columns("Name")
    table.Constraints.Add("idNameConstraint", columns, True)
End Sub

Comentários

O CollectionChanged evento ocorrerá se a restrição for adicionada com êxito.

Confira também

Aplica-se a

Add(String, DataColumn[], DataColumn[])

Constrói um novo ForeignKeyConstraint, com as matrizes especificadas de colunas pai e colunas filho, e adiciona a restrição à coleção.

public:
 virtual System::Data::Constraint ^ Add(System::String ^ name, cli::array <System::Data::DataColumn ^> ^ primaryKeyColumns, cli::array <System::Data::DataColumn ^> ^ foreignKeyColumns);
public:
 System::Data::Constraint ^ Add(System::String ^ name, cli::array <System::Data::DataColumn ^> ^ primaryKeyColumns, cli::array <System::Data::DataColumn ^> ^ foreignKeyColumns);
public virtual System.Data.Constraint Add(string name, System.Data.DataColumn[] primaryKeyColumns, System.Data.DataColumn[] foreignKeyColumns);
public System.Data.Constraint Add(string name, System.Data.DataColumn[] primaryKeyColumns, System.Data.DataColumn[] foreignKeyColumns);
abstract member Add : string * System.Data.DataColumn[] * System.Data.DataColumn[] -> System.Data.Constraint
override this.Add : string * System.Data.DataColumn[] * System.Data.DataColumn[] -> System.Data.Constraint
member this.Add : string * System.Data.DataColumn[] * System.Data.DataColumn[] -> System.Data.Constraint
Public Overridable Function Add (name As String, primaryKeyColumns As DataColumn(), foreignKeyColumns As DataColumn()) As Constraint
Public Function Add (name As String, primaryKeyColumns As DataColumn(), foreignKeyColumns As DataColumn()) As Constraint

Parâmetros

name
String

O nome do ForeignKeyConstraint.

primaryKeyColumns
DataColumn[]

Uma matriz de DataColumn objetos que são a chave primária ou as colunas pai.

foreignKeyColumns
DataColumn[]

Uma matriz de DataColumn objetos que são a chave estrangeira ou as colunas filho.

Retornos

Um novo ForeignKeyConstraint.

Exemplos

O exemplo a seguir cria duas matrizes de objetos e cria duas ForeignKeyConstraint relações entre duas tabelas em um conjunto de DataColumn dados.

private void AddForeignConstraint(
    DataSet dataSet, DataTable table)
{
    try
    {
        DataColumn[] parentColumns = new DataColumn[2];
        DataColumn[] childColumns = new DataColumn[2];
        // Get the tables from the DataSet.
        DataTable customersTable = dataSet.Tables["Customers"];
        DataTable ordersTable = dataSet.Tables["Orders"];

        // Set Columns.
        parentColumns[0]=customersTable.Columns["id"];
        parentColumns[1]=customersTable.Columns["Name"];
        childColumns[0] = ordersTable.Columns["CustomerID"];
        childColumns[1] = ordersTable.Columns["CustomerName"];

        // Create ForeignKeyConstraint
        table.Constraints.Add("CustOrdersConstraint",
            parentColumns, childColumns);
    }
    catch(Exception ex)
    {
        // In case the constraint already exists,
        // catch the collision here and respond.
        Console.WriteLine("Exception of type {0} occurred.",
            ex.GetType());
    }
}
Private Sub AddForeignConstraint( _
ByVal dataSet As DataSet, ByVal table As DataTable)
    Try
        Dim parentColumns(1) As DataColumn
        Dim childColumns(1) As DataColumn
        ' Get the tables from the DataSet.
        Dim customersTable As DataTable = _
            dataSet.Tables("Customers")
        Dim ordersTable As DataTable = _
            dataSet.Tables("Orders")

        ' Set Columns.
        parentColumns(0) = customersTable.Columns("id")
        parentColumns(1) = customersTable.Columns("Name")
        childColumns(0) = ordersTable.Columns("CustomerID")
        childColumns(1) = ordersTable.Columns("CustomerName")

        ' Create ForeignKeyConstraint
        table.Constraints.Add("CustOrdersConstraint", _
            parentColumns, childColumns)

    Catch ex As Exception
        ' In case the constraint already exists, 
        ' catch the collision here and respond.
        Console.WriteLine("Exception of type {0} occurred.", _
            ex.GetType().ToString())
    End Try
End Sub

Comentários

O CollectionChanged evento ocorrerá se a restrição for adicionada com êxito.

Aplica-se a