Freigeben über


Definieren des Schemas für eine Datentabelle

Das Schema oder die Struktur einer Tabelle wird durch Spalten und Einschränkungen dargestellt. Das Schema einer DataTable definieren Sie mit Hilfe von DataColumn-Objekten sowie mit ForeignKeyConstraint- und UniqueConstraint-Objekten. Die Spalten in einer Tabelle können Spalten in einer Datenquelle zugeordnet sein, berechnete Werte aus Ausdrücken oder Primärschlüsselwerte enthalten, und ihre Werte können automatisch erhöht werden.

Unterscheidung der Groß-/Kleinschreibung

Bei den auf Namen basierenden Verweisen auf Spalten, Beziehungen und Einschränkungen in einer Tabelle muss die Groß-/Kleinschreibung beachtet werden. Zwei oder mehr Spalten, Beziehungen oder Einschränkungen mit dem gleichen Namen können in der gleichen Tabelle vorhanden sein, wenn sie sich in der Groß-/Kleinschreibung voneinander unterscheiden. Zulässig ist beispielsweise Col1 und col1. In dieser Situation muss die Groß-/Kleinschreibung eines Verweises auf eine der Spalten anhand des Namens exakt mit der Schreibweise des Spaltennamens übereinstimmen, andernfalls wird eine Ausnahme ausgelöst. Beispiel: Wenn die Tabelle myTable die Spalten Col1 und col1 enthält, verweisen Sie namensbasiert auf die Spalte Col1 mit myTable.Columns["Col1"] und auf die Spalte col1 mit myTable.Columns["col1"]. Wenn Sie versuchen, auf eine der Spalten mit myTable.Columns["COL1"] zu verweisen, wird eine Ausnahme ausgelöst.

Die Regel für die Beachtung der Groß-/Kleinschreibung gilt nicht, wenn nur eine Spalte, Beziehung oder Einschränkung mit einem bestimmten Namen vorhanden ist. Wenn also keine andere Spalte, Beziehung oder Einschränkung in der Tabelle den gleichen Namen wie die betreffende Spalte, Beziehung oder Einschränkung hat, auch nicht mit abweichender Groß-/Kleinschreibung, können Sie anhand des Namens in beliebiger Schreibweise auf das Objekt verweisen, ohne dass eine Ausnahme ausgelöst wird. Wenn die Tabelle beispielsweise nur die Spalte Col1 enthält, können Sie mit my.Columns["COL1"] auf diese verweisen.

Die CaseSensitive-Eigenschaft der DataTable hat keinerlei Auswirkungen auf dieses Verhalten. Die CaseSensitive-Eigenschaft gilt für die Daten in der Tabelle und wirkt sich auf Funktionen wie Sortieren, Suchen, Filtern, Anwenden von Einschränkungen usw. aus. Verweise auf die Spalten, Beziehungen und Einschränkungen in einer Tabelle werden durch die CaseSensitive-Eigenschaft nicht beeinflusst.

In diesem Abschnitt