
- •Системы оперативной обработки транзакций
- •Традиционные экспертные системы
- •Информационные хранилища
- •Многомерные базы данных
- •Системы оперативной аналитической обработки данных
- •Трактовка терминов: “Информационно-поисковая система”, “Информационно-справочная система”, ”База знаний”. Понятие поискового образа объекта ипс и связь его с базой данных.
- •Архитектуры приложений баз данных. Локальное приложение. Информационная система с архитектурой “файл - сервер”. Информационная система с архитектурой “клиент-сервер”.
- •Понятие о сервере баз данных. Общие сведения о sql-серверах на примере ms sql Server 2008. Понятие об администрировании сервером. Основные сведения об утилитах администрирования sql-сервером.
- •Архитектура ado.Net.
- •Общие сведения о подключении к данным в Visual Studio.
- •Строки подключения
- •Установка соединения посредством кода в ado.Net
- •Подключения на этапе разработки в обозревателе серверов/обозревателе баз данных
- •Уровни объектной модели ado.Net
- •Хранение данных в наборах данных. Создание набора данных
- •Взаимодействие с базой данных через объект DataSet
- •Общие сведения об адаптере таблиц
- •Общие сведения об объекте DataTableReader
- •Мастер настройки источников данных
- •Конструктор наборов данных
- •Связанные таблицы и объекты DataRelation
- •Заполнение набора данных
- •Редактирование данных в приложении
- •Общие сведения о сохранении данных
- •Представление объекта DataTable
- •Технология linq.
- •Введение в запросы linq.
- •Linq to sql. Создание проекта linq.
- •Linq to sql. Три части операции запроса.
- •Linq to sql. Синтаксис запроса и метода.
- •Linq to DataSet. Общие сведения о linq to DataSet.
- •Linq to DataSet. Запросы к одиночным таблицам.
- •Linq to DataSet. Универсальные методы Field и SetField.
- •Понятие метаданных и способы их представления в структурах данных. Основные сведения о представлении знаний. Сравнительное определение терминов “Знание” и “Информация”.
- •Нелинейные структуры данных. Общие понятия о деревьях.
- •Представление сетевых структур.
- •Методы реализации древовидных и сетевых структур в реляционных субд.
- •Дескрипторная компонента проектной среды поддержки принятия решений в сапр. Реализация дескрипторной компоненты средствами реляционных субд.
- •– 41. Классификационная компонента проектной среды принятия решений в сапр. Обоснование необходимости присутствия классификационной компоненты в информационных системах сапр.
- •Продукционная компонента проектной среды принятия решений в сапр.
- •Компонента структурных объектов проектной среды принятия решений в сапр. Общее понятие о методах реализации структурной компоненты в информационных системах сапр.
- •Представление инженерных знаний в форме информационно-логических таблиц (илт).
- •Справочные таблицы без условий. Реляционное представление справочных таблиц без условий.
- •Справочные таблицы с условиями. Реляционное представление справочных таблиц с условиями.
Заполнение набора данных
По умолчанию набор данных не содержит данных. Заполнение набора данных фактически означает загрузку данных в отдельные объекты DataTable, составляющие набор данных. Таблицы данных заполняются путем выполнения запросов адаптера таблиц или выполнением команд адаптера данных (например SqlDataAdapter).
При заполнении набора данных возникают различные события, проверяются ограничения, и т. д.
Заполнять наборы данных можно различными способами:
Если вы создали набор данных с использованием средств проектирования, например с помощью мастера данных, вызовите метод Fill адаптера таблиц;
Вызовите метод Fill объекта DataAdapter;
Вручную таблицы набора данных можно заполнить, создавая объекты DataRow и добавляя их в коллекцию таблицы DataRowCollection. (Это можно делать только во время выполнения программы; во время разработки задавать элементы коллекции DataRowCollection нельзя.);
Считывание XML-документа или потока в набор данных. Для получения дополнительных сведений см. описание метода ReadXml. Пример см. в разделе Пошаговое руководство. Считывание XML-данных в набор данных;
Слияние (копирование) содержимое одного набора данных с другим. Данный сценарий полезен тогда, когда приложение получает наборы данных из различных источников (например из различных веб-служб XML), но при этом требуется объединить их в один набор данных. Дополнительные сведения см. в разделе Объединение содержимого DataSet (ADO.NET);
Слияние (копирование) содержимого одной таблицы DataTable с другой.
Заполнение набора данных фактически означает загрузку данных в отдельные объекты DataTable, составляющие набор данных. Таблицы данных заполняются путем выполнения запросов к адаптеру таблицы TableAdapter или вызова команд адаптера обработки данных (например, SqlDataAdapter).
Необходимость использования объектов TableAdapter или адаптеров обработки данных зависит от способа создания набора данных. При использовании средств разработки в Visual Studio, например Мастера настройки источника данных, набор данных содержит адаптеры таблиц TableAdapter. Если набор данных был создан программно, то, как правило, для загрузки данных в таблицы необходимо создание адаптеров обработки данных.
Примечание. При перетаскивании элементов из окна Источники данных на форму код для заполнения таблицы данными автоматически добавляется к обработчику событий Form_Load. Откройте форму в редакторе кода для просмотра точного синтаксиса заполнения отдельных таблиц. Если не требуется выполнять заполнение таблицы при загрузке формы, можно переместить этот код в другой метод или вообще удалить его.
Заполнение набора данных с помощью адаптера таблицы TableAdapter
Можно вызвать запрос как метод объекта TableAdapter для загрузки данных в таблицы набора данных. Передайте DataTable, которую требуется заполнить, запросу адаптера таблицы TableAdapter. Если запрос использует параметры, также передайте их в метод. Если набор данных содержит несколько таблиц, следует иметь отдельные адаптеры таблиц TableAdapters для каждой таблицы и, следовательно, заполнять каждую таблицу отдельно.
Примечание. По умолчанию при каждом выполнении запроса объекта TableAdapter данные в таблице очищаются перед загрузкой результатов запроса в таблицу. Можно сохранить существующие данные в таблице и добавить результаты, присвоив свойству ClearBeforeFill адаптера таблиц TableAdapter значение false.
Для заполнения набора данных с помощью адаптера таблицы TableAdapter:
1. Откройте форму или компонент в окне Редактор кода.
2. Добавьте код в любое место в приложении, где необходимо загрузить данные в таблицу. Если запрос не требует параметров, передайте DataTable, которую требуется заполнить. Код может выглядеть следующим образом:
this.customersTableAdapter.Fill(this.northwindDataSet.Customers);
3. Если запрос использует параметры, передайте DataTable, которую требуется заполнить, вместе с параметрами, ожидаемыми запросом. В зависимости от фактических параметров в запросе код будет выглядеть аналогично следующим примерам:
customersTableAdapter.FillByCity(northwindDataSet.Customers, "Seattle");
customersTableAdapter.FillByCityAndState(northwindDataSet.Customers, "Seattle", "WA");
Заполнение набора данных с помощью адаптера данных DataAdapter
Вызовите метод Fill адаптера обработки данных DataAdapter. В результате адаптер выполнит инструкцию SQL или хранимую процедуру, на которую ссылается свойство SelectCommand, и поместит результат в таблицу набора данных. Если набор данных содержит несколько таблиц, для каждой таблицы необходимо иметь отдельный адаптер обработки данных и, следовательно, необходимо каждую таблицу заполнять отдельно.
Для заполнения набора данных с помощью адаптера данных DataAdapter:
Вызовите метод Fill объекта DataAdapter, передав в него DataSet или DataTable для загрузки данных. Например:
sqlDataAdapter1.Fill(dataset1.Tables["Customers"]);
В обычном случае следует указать имя DataTable для загрузки данных. Если передается имя DataSet вместо конкретной таблицы данных, DataTable с именем Table1 будет добавлена в набор данных и загружена с результатами из базы данных.
Заполнение набора данных с помощью адаптера таблицы TableAdapter
Можно вызвать запрос как метод объекта TableAdapter для загрузки данных в таблицы набора данных. Передайте DataTable, которую требуется заполнить, запросу адаптера таблицы TableAdapter. Если запрос использует параметры, также передайте их в метод. Если набор данных содержит несколько таблиц, следует иметь отдельные адаптеры таблиц TableAdapters для каждой таблицы и, следовательно, заполнять каждую таблицу отдельно. Примечание. По умолчанию при каждом выполнении запроса объекта TableAdapter данные в таблице очищаются перед загрузкой результатов запроса в таблицу. Можно сохранить существующие данные в таблице и добавить результаты, присвоив свойству ClearBeforeFill адаптера таблиц TableAdapter значение false. Для заполнения набора данных с помощью адаптера таблицы TableAdapter: 1. Откройте форму или компонент в окне Редактор кода. 2. Добавьте код в любое место в приложении, где необходимо загрузить данные в таблицу. Если запрос не требует параметров, передайте DataTable, которую требуется заполнить. Код может выглядеть следующим образом: this.customersTableAdapter.Fill(this.northwindDataSet.Customers); 3. Если запрос использует параметры, передайте DataTable, которую требуется заполнить, вместе с параметрами, ожидаемыми запросом. В зависимости от фактических параметров в запросе код будет выглядеть аналогично следующим примерам:
customersTableAdapter.FillByCity(northwindDataSet.Customers, "Seattle"); customersTableAdapter.FillByCityAndState(northwindDataSet.Customers, "Seattle", "WA");