Иллюстрированный самоучитель по Architecture .NET

Создание таблицы без обращения к источнику данных

DataSet (Набор данных) можно использовать как резидентную реляционную базу данных, не связанную ни с какой другой базой данных. Теперь на примере программы DataEditing, мы рассмотрим несколько возможностей объекта DataSet (Набор данных), связанных с добавлением данных и отношений непосредственно в набор данных, без обращения к какой бы то ни было внешней базе данных.

Прежде всего создадим новый объект DataSet (Набор данных) и включим проверку ограничений. Затем добавим в DataSet (Набор данных) четыре объекта DataTable (Таблица данных): Books (Книги), Categories (Категории), Authors (Авторы) и BookCategories (Категории книг).

DataSet *ds = new DataSet;
// новый Набор данных ds › EnforceConstraints = true; // истина
// Добавить (Add) таблицы (tables) к Набору данных (DataSet) DataTable *categories =
ds › Tables › Add("Categories");
// Таблицы › Добавить ("Категории");
DataTable *bookcategories =
ds › Tables › Add("BookCategories");
// Таблицы › Добавить ("BookCategories");
DataTable *authors = ds › Tables › Add("Authors");
// Таблицы › Добавить ("Авторы");
DataTable *books = ds › Tables › Add("Books");
// Таблицы › Добавить ("Книги");

Объект DataTable (Таблица данных) содержит коллекцию объектов DataColumn, каждый из которых представляет собой столбец таблицы. Теперь добавим столбцы в определения таблиц.

// определить типы для определений столбцов
Type *stringType = Type::GetType("System.String");
// Система.Строка
Type *intType = Type::GetType("System.Int32");
// Определить столбцы для таблиц
// Добавить столбец (column) в таблицу Category (Категория)
DataColumn *categoryname =
categories › Columns › Add(// категории › Столбцы › Добавить "Category",stringType);
// Категория
// Добавить (Add) столбцы (columns) для таблицы BookCategories
DataColumn *cn = bookcategories › Columns › Add(// Столбцы › Добавить
"CategoryName", stringType);
DataColumn *loc = bookcategories › Columns › Add(// Столбцы › Добавить
"LibraryofCongressNumber", stringType);
// Добавить (Add) столбцы (columns) для таблицы Authors (Авторы)
DataColumn *auid = authors › Columns › Add(// авторы › Столбцы › Добавить
"AuthorId", intType); authors › Columns › Add(// авторы › Столбцы › Добавить
"AuthorLastName", stringType); authors › Columns › Add(// авторы › Столбцы › Добавить
"AuthorFirstName", stringType);
// Добавить (Add) столбцы (columns) для таблицы Books (Книги)
DataColumn *ISBN = books › Columns › Add(// книги › Столбцы › Добавить
"ISBN", stringType);
DataColumn *booksauid = books › Columns › Add(// книги › Столбцы › Добавить
"AuthorId", intType);
books › Columns › Add("Title", stringType);
// книги › Столбцы › Добавить ("Название", stringType);
DataColumn *bloc = books › Columns › Add(// книги › Столбцы › Добавить
"LibraryofCongressNumber", stringType);
Если Вы заметили ошибку, выделите, пожалуйста, необходимый текст и нажмите CTRL + Enter, чтобы сообщить об этом редактору.