Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
История создания датчика движения: Первый прибор для обнаружения движения был изобретен немецким физиком Генрихом Герцем...
Топ:
Особенности труда и отдыха в условиях низких температур: К работам при низких температурах на открытом воздухе и в не отапливаемых помещениях допускаются лица не моложе 18 лет, прошедшие...
Комплексной системы оценки состояния охраны труда на производственном объекте (КСОТ-П): Цели и задачи Комплексной системы оценки состояния охраны труда и определению факторов рисков по охране труда...
Интересное:
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Распространение рака на другие отдаленные от желудка органы: Характерных симптомов рака желудка не существует. Выраженные симптомы появляются, когда опухоль...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Если необходимо осуществить поиск по нескольким полям, то предложение WHERE должно выглядеть подобно следующему:
«Where (условие1) and (условие2)»
Восстановление всех записей в таблице
Если необходимо скрыть результаты поиска и отобразить все данные таблицы, то следует прописать команду:
this.Адаптер. Fill (this.БД.Таблица);
например,
this. personTableAdapter.Fill(this.sotrudnicDataSet1.person);
Сортировка
Для сортировки данных в таблице по одному определенному полю следует применять команду:
Источник. Таблица = " поле направление ";
например,
if (comboBox1.Text=="фамилия") personBindingSource.person="fio Desc";
Для указания направления сортировки применяют ключевые слова: Desc – сортировка по убыванию, Asc – сортировка по возрастанию.
Агрегирование
Для применения к полям таблицы функций агрегирования и отображения результатов этих функций на форме, необходимо:
1. Открыть конструктор данных, например, выбрав в контекстном меню к БД в окне Источники данных команду Изменить набор данных в конструкторе:

2. Если таблица запросов (DataTable) отсутствует, то создать ее. В нашем примере это таблица All.
3. Через контекстное меню к таблице запросов выбрать команды Добавить, Запрос…


5. В следующем окне выбрать команду «Инструкция Select, возвращающая одиночное значение» и нажать кнопку Далее

6. В следующем окне нажать кнопку «Построитель запросов»

7. В следующем окне необходимо прописать запрос SQL, например:
Select функция(поле) AS имя_результата
From таблица

Замечание. Все поля должны быть выключены.
8. Для проверки созданного запроса можно нажать кнопку «Выполнить запрос». Если ошибки отсутствуют, то в появившемся окне проверки запроса следует нажать кнопку «ОК», а в окне Построитель запросов – кнопку «Далее».
9. В окне Выбор имени функции следует ввести имя для новой функции агрегирования и нажать кнопку «Далее».


label8.Text = this.allTableAdapter.Avg_sal().ToString();
Пример:

Замечания.
1) Если запрос должен возвращать больше одного значения, то на шаге пятом следует выбрать команду «Запрос Select, возвращающий строки»
2) Если необходимо посчитать функцию агрегирования для определенной совокупности строк, то следует усложнить запрос:
Select функция(поле) As название результата
From таблица
Where поле=@перем
При этом изменится вызов
label4.Text =this.Адаптер.Avg_sal(значение).ToString();
Вычисляемые поля
Таблица данных в наборе данных может содержать столбцы, значения которых вычисляются, а не считываются из базы данных. Например, в записи, содержащей подробные сведения о сотрудниках, часто имеет смысл определять зарплату с надбавками путем умножения исходной зарплату на некоторый коэффициент. Определять вычисляемые столбцы можно с помощью выражений.
Синтаксис выражения состоит из стандартных операторов. К значениям данных можно обращаться по имени соответствующего столбца (как это делается в инструкциях SQL), а также включать в выражения функции агрегирования, такие как count, avg, sum и др.
Например, выражение для столбца salary, который отображает значение зарплаты, умноженное на коэффициент k, может быть следующим:
s alary* k
Для обращения к столбцам дочерних таблиц можно использовать зарезервированное слово Child, после которого указывается имя столбца. Например, следующее выражение возвращает среднее значение столбца salary во всех связанных дочерних записях:
Avg(Child.salary)
Для создания выражений для столбцов в Конструкторе наборов данных:
1. Откройте таблицу в Конструкторе наборов данных.
2. В требуемой таблице данных выберите столбец, в который требуется добавить выражение, или добавьте к таблице новый столбец.
3. В окне Свойства введите выражение в свойстве Expression.
Для создания выражений для столбцов в компоненте DataGridView:
1. Создайте в DataGridView новый столбец. Для этого в окне Задачи для объекта DataGridView выберите команду Добавить столбец.

2. В появившемся окне Добавить столбец введите Имя столбца и Текст заголовка. Нажмите кнопку Добавить, а затем Закрыь.

Результат:

3. Настройте свойства нового поля. Для этого в окне Задачи для объекта DataGridView выберите команду Правка столбцов.
4. В появившемся окне Правка столбцов установите свойство: DataPtopertyName = (нет) – новый столбец не должен быть привязан ни к какому полю

5. Установите другие необходимые свойства, например, ширину столбца и т.д. и нажмите ОК.
6. В функции обработки события создания вычисляемого поля пропишите код, аналогичный следующему:
private void button1_Click(object sender, EventArgs e)
{
//Создание нового столбца с указанием названия и типа данных
DataColumn col = new DataColumn(" имя ",typeof(тип));
// Добавление столбца в существующую таблицу
Имя_БД.имя_таблицы. Columns. Add (col);
// заполнение столбца значениями
for (int i = 0; i < Имя_БД.имя_таблицы. Count; i ++) {
Convert. ToInt 16(Имя_БД.имя_таблицы.[ i ]["имя"])= значениеж
}
//Отображение столбца в DataGridView
DataGridView. Columns [№1]. DataPropertyName = bDDataSet. DataTable 1. Columns [№2]. ToString (); }
где №1 – номер вычисляемого поля в таблице на форме; №2 – номер нового поля в таблице БД.
Пример.
private void Form4_Shown(object sender, EventArgs e)
{
//Создание нового столбца с указанием названия и типа данных
DataColumn col = new DataColumn("Calc", typeof(double));
// Добавление столбца в существующую таблицу
sotrudnicDataSet1.All.Columns.Add(col);
// Заполнение столбца значениями
for (int i = 0; i < sotrudnicDataSet1.All.Count; i++)
{if (Convert.ToInt16(sotrudnicDataSet1.All[i]["salary"]) < 2000)
{
sotrudnicDataSet1.All[i]["Calc"] =
(Convert.ToDouble(sotrudnicDataSet1.All[i]["salary"]) * 1.2);
}
else
{
sotrudnicDataSet1.All[i]["Calc"] =
Convert.ToDouble(sotrudnicDataSet1.All[i]["salary"]);
}
}
// Отображение столбца в DataTableGridView
allDataGridView.Columns[6].DataPropertyName =
sotrudnicDataSet1.All.Columns[6].ToString();
}
Результат:

|
|
|
Адаптации растений и животных к жизни в горах: Большое значение для жизни организмов в горах имеют степень расчленения, крутизна и экспозиционные различия склонов...
Типы оградительных сооружений в морском порту: По расположению оградительных сооружений в плане различают волноломы, обе оконечности...
Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...
Индивидуальные очистные сооружения: К классу индивидуальных очистных сооружений относят сооружения, пропускная способность которых...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!