Diese Website verwendet Cookies für Analysen, personalisierte Inhalte und Werbung. Indem Sie diese Website nutzen, erklären Sie sich mit dieser Verwendung einverstanden.Weitere Informationen
Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.
Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch
Diese Dokumentation wurde archiviert und wird nicht länger gepflegt.
Erstellt ein neues UniqueConstraint mit dem angegebenen Namen, DataColumn, und der Wert, der angibt, ob die Spalte ein Primärschlüssel ist, und fügt es der Auflistung hinzu.
Erstellt ein neues ForeignKeyConstraint mit dem angegebenen Namen und übergeordneten Spalte und der untergeordneten Spalte und fügt die Einschränkung der Auflistung hinzu.
Erstellt ein neues UniqueConstraint mit dem angegebenen Namen, einem Array von DataColumn Objekte und gibt an, ob die Spalte ein Primärschlüssel ist, und fügt es der Auflistung hinzu.
Erstellt ein neues ForeignKeyConstraint, mit den angegebenen Arrays von übergeordneten und untergeordneten Spalten und fügt die Einschränkung der Auflistung hinzu.
Die ConstraintCollection kann sowohl enthalten UniqueConstraint und ForeignKeyConstraint von Objekten für die DataTable. Ein UniqueConstraint Objekt stellt sicher, dass Daten in einer bestimmten Spalte immer eindeutig, die Integrität der Daten beizubehalten. Die ForeignKeyConstraint bestimmt in verwandten ausgeführt werden, Benutzertabellen nach Daten in der DataTable aktualisiert oder gelöscht wird. Wenn eine Zeile gelöscht wird, z. B. die ForeignKeyConstraint bestimmt, ob die verknüpften Zeilen ebenfalls gelöscht (Cascade) oder eine andere Vorgehensweise.
Hinweis
Beim Hinzufügen einer DataRelation die eine Beziehung zwischen zwei Tabellen erstellt ein DataSet, sowohl eine ForeignKeyConstraint und ein UniqueConstraint werden automatisch erstellt. Die UniqueConstraint gilt für die Primärschlüsselspalte in der übergeordneten DataTable, und die Einschränkung wird hinzugefügt, auf diese Tabelle ConstraintCollection. Die ForeignKeyConstraint auf die Primärschlüsselspalte und die Fremdschlüsselspalte angewendet, und die Einschränkung wird der untergeordneten Tabelle hinzugefügt ConstraintCollection.
Die ConstraintCollection verwendet Standardmethoden, z. B. Add, Clear, und Remove. Darüber hinaus die Contains Methode kann verwendet werden, um das Vorhandensein einer bestimmten Einschränkung in der Auflistung.
privatevoid MakeTableWithUniqueConstraint()
{
DataTable table = new DataTable("table");
DataColumn column = new DataColumn("UniqueColumn");
column.Unique=true;
table.Columns.Add(column);
// Print count, name, and type.
Console.WriteLine("Constraints.Count "
+ table.Constraints.Count);
Console.WriteLine(table.Constraints[0].ConstraintName);
Console.WriteLine(table.Constraints[0].GetType() );
// Add a second unique column.
column = new DataColumn("UniqueColumn2");
column.Unique=true;
table.Columns.Add(column);
// Print info again.
Console.WriteLine("Constraints.Count "
+ table.Constraints.Count);
Console.WriteLine(table.Constraints[1].ConstraintName);
Console.WriteLine(table.Constraints[1].GetType() );
}
privatevoid MakeTableWithForeignConstraint()
{
// Create a DataSet.
DataSet dataSet = new DataSet("dataSet");
// Make two tables.
DataTable customersTable= new DataTable("Customers");
DataTable ordersTable = new DataTable("Orders");
// Create four columns, two for each table.
DataColumn name = new DataColumn("Name");
DataColumn id = new DataColumn("ID");
DataColumn orderId = new DataColumn("OrderID");
DataColumn cDate = new DataColumn("OrderDate");
// Add columns to tables.
customersTable.Columns.Add(name);
customersTable.Columns.Add(id);
ordersTable.Columns.Add(orderId);
ordersTable.Columns.Add(cDate);
// Add tables to the DataSet.
dataSet.Tables.Add(customersTable);
dataSet.Tables.Add(ordersTable);
// Create a DataRelation for two of the columns.
DataRelation myRelation = new
DataRelation("CustomersOrders",id,orderId,true);
dataSet.Relations.Add(myRelation);
// Print TableName, Constraints.Count, // ConstraintName and Type.foreach(DataTable t in dataSet.Tables)
{
Console.WriteLine(t.TableName);
Console.WriteLine("Constraints.Count "
+ t.Constraints.Count);
Console.WriteLine("ParentRelations.Count "
+ t.ParentRelations.Count);
Console.WriteLine("ChildRelations.Count "
+ t.ChildRelations.Count);
foreach(Constraint cstrnt in t.Constraints)
{
Console.WriteLine(cstrnt.ConstraintName);
Console.WriteLine(cstrnt.GetType());
}
}
}