Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Базы данных под .NET > Создание DataTable из других


Автор: EEE64 7.11.2010, 14:38
Имеется три таблицы:
1) Students (int RecordBook, string SecondName, string FirstName)
2) Subjects (int id, string Name)
3) Journal (int RecordBook, int Suject, int Grade)

Отношения:
1) Journal.RecordBook - внешний ключ из Students
2) Journal.Subject - внешний ключ из Subjects

Мне необходимо сгенерировать 4 таблицу, в которой данные будут представлены в следующем виде:
RecordBook | Subject 1 | ... | Subject n |
-----------------------------------------------------
Student1 | | | | |
-----------------------------------------------------
.... | | | | |
-----------------------------------------------------
Student n | | | | |
-----------------------------------------------------


сейчас делаю следующим образом:
1. Генерирую столбцы проходя по всем строкам таблицы Subject

    
Код


// Generate columns
foreach (DataRow item in gradeDataSet.Subjects.Rows)
{
gradeDataSet.Tables["modJournal"].Columns.Add(item.Field<string>("Name"), typeof(int));
}



2. Думаю как лучше вставить оценки в эту таблицу?

Какие есть мысли на этот счет? Может сделать отношение какое-нибудь между modJournal и Journal. Потом нужно будет производить обратную операцию, чтобы вытащить новые данные из этого модифицированного журнала и заграть их обратно в Journal, а оттуда в базу.

Автор: jonie 7.11.2010, 16:05
ну сделайте view в базе, а данные вносите хранимой процедурой или "хитрым" sql запросом

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)