ConstraintCollection.Add 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
将对象 Constraint 添加到集合。
重载
| 名称 | 说明 |
|---|---|
| Add(Constraint) |
将指定的 Constraint 对象添加到集合中。 |
| Add(String, DataColumn, Boolean) |
使用指定的名称UniqueConstraint和值构造一个新DataColumn值,该值指示列是否为主键,并将其添加到集合中。 |
| Add(String, DataColumn, DataColumn) |
构造具有指定名称、父列和子列的新 ForeignKeyConstraint 项,并将约束添加到集合中。 |
| Add(String, DataColumn[], Boolean) |
构造一个具有指定名称、对象数组UniqueConstraint和值的新DataColumn项,该值指示列是否为主键,并将其添加到集合中。 |
| Add(String, DataColumn[], DataColumn[]) |
使用父列和子列的指定数组构造一个新 ForeignKeyConstraint列,并将约束添加到集合中。 |
Add(Constraint)
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
将指定的 Constraint 对象添加到集合中。
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)
参数
- constraint
- Constraint
要 Constraint 添加的。
例外
参数 constraint 为 null。
约束已属于此集合,或属于另一个集合。
该集合已具有具有相同名称的约束。 (比较不区分大小写。
示例
下面的示例向 a 添加一UniqueConstraintConstraintCollection个 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
注解
如果通过添加或删除约束成功更改集合,则会发生该 CollectionChanged 事件。
另请参阅
适用于
Add(String, DataColumn, Boolean)
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
使用指定的名称UniqueConstraint和值构造一个新DataColumn值,该值指示列是否为主键,并将其添加到集合中。
public:
System::Data::Constraint ^ Add(System::String ^ name, System::Data::DataColumn ^ column, bool primaryKey);
public:
virtual System::Data::Constraint ^ Add(System::String ^ name, System::Data::DataColumn ^ column, bool primaryKey);
public 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);
public virtual System.Data.Constraint Add(string name, System.Data.DataColumn column, bool primaryKey);
member this.Add : string * System.Data.DataColumn * bool -> System.Data.Constraint
abstract member Add : string * System.Data.DataColumn * bool -> System.Data.Constraint
override this.Add : string * System.Data.DataColumn * bool -> System.Data.Constraint
Public Function Add (name As String, column As DataColumn, primaryKey As Boolean) As Constraint
Public Overridable Function Add (name As String, column As DataColumn, primaryKey As Boolean) As Constraint
参数
- name
- String
UniqueConstraint的名称。
- column
- DataColumn
DataColumn约束适用的对象。
- primaryKey
- Boolean
指定列是否应为主键。 如果 true为列,则列将是主键列。
返回
新的 UniqueConstraint。
例外
该集合已具有具有指定名称的约束。 (比较不区分大小写。
示例
以下示例使用 Add 该方法创建并添加新 UniqueConstraint 项 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
注解
CollectionChanged如果成功添加约束,则会发生该事件。
另请参阅
适用于
Add(String, DataColumn, DataColumn)
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
构造具有指定名称、父列和子列的新 ForeignKeyConstraint 项,并将约束添加到集合中。
public:
System::Data::Constraint ^ Add(System::String ^ name, System::Data::DataColumn ^ primaryKeyColumn, System::Data::DataColumn ^ foreignKeyColumn);
public:
virtual System::Data::Constraint ^ Add(System::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);
public System.Data.Constraint Add(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);
member this.Add : string * System.Data.DataColumn * System.Data.DataColumn -> System.Data.Constraint
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
Public Function Add (name As String, primaryKeyColumn As DataColumn, foreignKeyColumn As DataColumn) As Constraint
Public Overridable Function Add (name As String, primaryKeyColumn As DataColumn, foreignKeyColumn As DataColumn) As Constraint
参数
- name
- String
- primaryKeyColumn
- DataColumn
主键或父 DataColumn键。
- foreignKeyColumn
- DataColumn
外键或子 DataColumn键。
返回
新的 ForeignKeyConstraint。
示例
以下示例向
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
注解
CollectionChanged如果成功添加约束,则会发生该事件。
适用于
Add(String, DataColumn[], Boolean)
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
构造一个具有指定名称、对象数组UniqueConstraint和值的新DataColumn项,该值指示列是否为主键,并将其添加到集合中。
public:
System::Data::Constraint ^ Add(System::String ^ name, cli::array <System::Data::DataColumn ^> ^ columns, bool primaryKey);
public:
virtual System::Data::Constraint ^ Add(System::String ^ name, cli::array <System::Data::DataColumn ^> ^ columns, bool primaryKey);
public 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);
public virtual System.Data.Constraint Add(string name, System.Data.DataColumn[] columns, bool primaryKey);
member this.Add : string * System.Data.DataColumn[] * bool -> System.Data.Constraint
abstract member Add : string * System.Data.DataColumn[] * bool -> System.Data.Constraint
override this.Add : string * System.Data.DataColumn[] * bool -> System.Data.Constraint
Public Function Add (name As String, columns As DataColumn(), primaryKey As Boolean) As Constraint
Public Overridable Function Add (name As String, columns As DataColumn(), primaryKey As Boolean) As Constraint
参数
- name
- String
UniqueConstraint的名称。
- columns
- DataColumn[]
约束应用到的对象数组 DataColumn 。
- primaryKey
- Boolean
指定列是否应为主键。 如果 true为列,则列将是主键列。
返回
新的 UniqueConstraint。
例外
该集合已具有具有指定名称的约束。 (比较不区分大小写。
示例
以下示例创建一个DataColumn对象数组,这些对象用于在特定UniqueConstraint对象中创建新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
注解
CollectionChanged如果成功添加约束,则会发生该事件。
另请参阅
适用于
Add(String, DataColumn[], DataColumn[])
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
- Source:
- ConstraintCollection.cs
使用父列和子列的指定数组构造一个新 ForeignKeyConstraint列,并将约束添加到集合中。
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(System::String ^ name, cli::array <System::Data::DataColumn ^> ^ primaryKeyColumns, cli::array <System::Data::DataColumn ^> ^ foreignKeyColumns);
public 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);
public virtual System.Data.Constraint Add(string name, System.Data.DataColumn[] primaryKeyColumns, System.Data.DataColumn[] foreignKeyColumns);
member this.Add : string * System.Data.DataColumn[] * System.Data.DataColumn[] -> System.Data.Constraint
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
Public Function Add (name As String, primaryKeyColumns As DataColumn(), foreignKeyColumns As DataColumn()) As Constraint
Public Overridable Function Add (name As String, primaryKeyColumns As DataColumn(), foreignKeyColumns As DataColumn()) As Constraint
参数
- name
- String
- primaryKeyColumns
- DataColumn[]
作为主键或父列的对象数组 DataColumn 。
- foreignKeyColumns
- DataColumn[]
作为外键或子列的对象数组 DataColumn 。
返回
新的 ForeignKeyConstraint。
示例
以下示例创建两个 DataColumn 对象数组,然后在数据集中的两个表之间创建两 ForeignKeyConstraint 个关系。
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
注解
CollectionChanged如果成功添加约束,则会发生该事件。