2011-01-02 2 views
0

Я работаю в VB.NET. У меня есть DataTable, скажем dt = New DataTable() У меня есть три столбца, скажем TeacherID, SubjectID и TeachingGrade Теперь я хочу пару [TeacherID - SubjectID], а не повторять. Оба являются целыми числами. Уникальная установка в столбцы, обеспечивает уникальность индивидуально, проблема ya .. Затем юридические данные также отклоняются. КАК?Как обеспечить уникальность, более чем 1 столбца таблицы данных, в vb.net?

+0

Я знаю, ПК заботится о уникальности. Но я уже использовал этот механизм ПК в других колонках. Теперь я построю еще один пример, чтобы лучше объяснить сценарий. Рассмотрим таблицу, FamilyMembers, где мой PK (FamilyID + MemberID) оба целых числа. Существует еще один столбец, MemberName (строка). Теперь я хочу иметь уникальность в столбцах (FamilyID + MemberName). Скажите, пожалуйста, сейчас, КАК? –

ответ

0

Установите эти колонки в качестве первичного ключа для таблицы:

DataTable dt = new DataTable(); 
DataColumn teacherIdColumn = dt.Columns.Add("TeacherId", typeof(int)); 
DataColumn subjectIdColumn = dt.Columns.Add("SubjectId", typeof(int)); 
dt.Columns.Add("TeachingGrade", typeof(int)); 
dt.PrimaryKey = new[] { teacherIdColumn, subjectIdColumn }; 

EDIT:

Вы также можете создать ограничение на столе:

dt.Constraints.Add(new UniqueConstraint(new[] { teacherIdColumn, subjectIdColumn }); 
+0

Спасибо. Я знаю, ПК заботится об уникальности. Но я уже использовал этот механизм ПК в других колонках. Теперь я построю еще один пример, чтобы лучше объяснить сценарий. Рассмотрим таблицу, FamilyMembers, где мой PK (FamilyID + MemberID) оба целых числа. Существует еще один столбец, MemberName (строка). Теперь я хочу иметь уникальность в столбцах (FamilyID + MemberName). Скажите, пожалуйста, сейчас, КАК? –

+0

@Satbhai M D, см. Мой обновленный ответ –

+0

СПАСИБО МНОГО. GREAT ... –

 Смежные вопросы

  • Нет связанных вопросов^_^