ConstraintCollection.Add Método

Definição

Adiciona um Constraint objeto à coleção.

Sobrecargas

Name Description
Add(Constraint)

Adiciona o objeto especificado Constraint à coleção.

Add(String, DataColumn, Boolean)

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

Add(String, DataColumn, DataColumn)

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

Add(String, DataColumn[], Boolean)

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

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

Constrói um novo ForeignKeyConstraint, com os arrays especificados de colunas pais e filhos, 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 a acrescentar.

Exceções

O constraint argumento é nulo.

A restrição já pertence a esta 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 é sensível a maiúsculas e maiúsculas.)

Exemplos

O exemplo seguinte acrescenta a UniqueConstraint ao ConstraintCollection 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

Observações

Se a coleção for alterada com sucesso através da adição ou remoção de restrições, o CollectionChanged evento ocorre.

Ver também

Aplica-se a

Add(String, DataColumn, Boolean)

Constrói um novo UniqueConstraint com o nome especificado, DataColumn, e valor que indica se a coluna é uma chave primária, e adiciona-o à 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

O DataColumn a 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 chave primária.

Devoluções

Uma nova UniqueConstraint.

Exceções

A restrição já pertence a esta 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 é sensível a maiúsculas e maiúsculas.)

Exemplos

O exemplo seguinte utiliza 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

Observações

O CollectionChanged evento ocorre se a restrição for adicionada com sucesso.

Ver também

Aplica-se a

Add(String, DataColumn, DataColumn)

Constrói um novo ForeignKeyConstraint com o nome especificado, a coluna pai e a coluna filha, 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.

Devoluções

Uma nova ForeignKeyConstraint.

Exemplos

O exemplo seguinte acrescenta um novo ForeignKeyConstraint ao ConstraintCollection 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

Observações

O CollectionChanged evento ocorre se a restrição for adicionada com sucesso.

Aplica-se a

Add(String, DataColumn[], Boolean)

Constrói um novo UniqueConstraint com o nome especificado, array de DataColumn objetos e valor que indicam se a coluna é uma chave primária, e adiciona-o à 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[]

Um array de DataColumn objetos a 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 chave primária.

Devoluções

Uma nova UniqueConstraint.

Exceções

A restrição já pertence a esta 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 é sensível a maiúsculas e maiúsculas.)

Exemplos

O exemplo seguinte cria um array de DataColumn objetos que são usados para criar um novo UniqueConstraint num 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

Observações

O CollectionChanged evento ocorre se a restrição for adicionada com sucesso.

Ver também

Aplica-se a

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

Constrói um novo ForeignKeyConstraint, com os arrays especificados de colunas pais e filhos, 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[]

Um array de DataColumn objetos que são as colunas principais ou pais.

foreignKeyColumns
DataColumn[]

Um array de DataColumn objetos que são a chave estrangeira, ou colunas filhas.

Devoluções

Uma nova ForeignKeyConstraint.

Exemplos

O exemplo seguinte cria dois arrays de DataColumn objetos e depois cria duas ForeignKeyConstraint relações entre duas tabelas num conjunto de 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

Observações

O CollectionChanged evento ocorre se a restrição for adicionada com sucesso.

Aplica-se a