- •1. Вложенные запросы. Привести примеры.
- •2. Методы компонента adoTable. Привести примеры.
- •3. Подключение к базе данных.
- •1. Объединение таблиц. Привести примеры.
- •2. Свойства компонента adoTable.
- •3. Оператор выбора Select. Привести примеры.
- •1. Операция Like в sql-запросах. Привести примеры.
- •2. Доступ к значению поля. Привести примеры.
- •3. Создание базы данных. Создание таблиц. Привести примеры.
- •1. Свойства компонента adoTable. Методы навигации по набору данных. Привести примеры.
- •2. Динамические запросы с параметром. Привести примеры
- •1. Динамический запрос всегда выполняется в том-же коннекте и как отдельный пакет(batch). Другими словами при использовании такого запроса,
- •3. Компиляция запроса происходят непосредственно перед его вызовом. Т.Е. Обо всех синтаксических ошибках вы узнаете только в этот момент.
- •3. Методы компонента adoTable. Привести примеры.
- •1. Объединение таблиц в sql-запросах.
- •2. Операторы добавления, редактирования, удаления данных в sql-запросах. Привести примеры.
- •3. Поиск записей в наборе данных.
- •1. Компонент adoConnection.
- •2. Операторы Alter Table, Create Table, Drop Table.
- •3. Компонент adoQuery. Основные свойства adoQuery. Привести примеры.
- •1. Написать оператор, осуществляющий создание бд в ms sql Server.
- •2. Написать sql- запрос, осуществляющий объединение данных из нескольких таблиц.
- •3. Методы создания и модификации таблиц.
- •1. Представления, их создание в ms sql Server.
- •2. Написать хранимую процедуру, осуществляющую добавление данных в таблицу.
- •3. Создание отчетов. Привести примеры.
- •1. Написать добавление, удаление, редактирование данных в таблице, используя, операторы Update, Delete, Insert.
- •2. Типы данных в sql-сервер.
- •Varchar(size) Может хранить не более 255 символов.
- •3. Операторы Update, Insert, Delete, Alter Table. Примеры.
- •1. Хранимые процедуры в ms sql Server.
- •2. Написать хранимую процедуру, осуществляющую удаление данных из таблицы.
- •3. Операторы Alter Table, Create Table, Drop Table.
- •2.Написать вложенный sql-запрос на примере любой базы данных.
- •1.Написать оператор выбора, осуществляющий выборку полей по нескольким критериям.
- •3. Создать базу данных, таблицу. Продемонстрировать на этой таблице операторы Update, Delete, Insert.
- •1.Представления. Хранимые процедуры. Привести примеры.
- •1. Оператор выбора Select. Отбор записей из таблицы. Вычисляемые поля.
- •1.Операторы присваивания значений переменным.
- •2. Написать sql- запрос, осуществляющий использование агрегатных функций.
- •1. Технология доступа к данным ado.
- •3. Извлечение данных. Поиск, сортировка данных.
- •1. Оператор выбора Select. Отбор записей из таблицы. Вычисляемые поля.
- •2. Использование операторов in, Between, like. Агрегатные функции. Упорядочивание записей.
- •3. Динамические запросы с параметром. Способы задания параметров
- •1. Оператор объявления переменных в хранимой процедуре.
- •2. Оператор выбора Select. Сортировка данных. Использование специальных операторов. Вычисляемые поля.
- •3. Агрегатные характеристики в sql – запросах. Вложенные запросы. Объединение таблиц в sql-запросах.
- •1. Написать хранимые процедуры на редактирование данных одного поля, нескольких полей.
- •2. Написать несколько представлений в базе данных.
- •3. Вызов представлений и хранимых процедур в среде ms sql Server.
1.Операторы присваивания значений переменным.
Операция присваивания значения переменной очень проста — достаточно лишь написать имя переменной, ввести после него один знак равенства (=), затем ввести выражение, значение которого требуется присвоить переменной:
Можно также присвоить значение пользовательской переменной в операторах кроме SET. В этом случае оператор присваивания должен быть := и нет = потому что последний обрабатывается как оператор сравнения = в не -SET операторы:
mysql> SET @t1=1, @t2=2, @t3:=4;mysql> SELECT @t1, @t2, @t3, @t4 := @t1+@t2+@t3;+------+------+------+--------------------+| @t1 | @t2 | @t3 | @t4 := @t1+@t2+@t3 |+------+------+------+--------------------+| 1 | 2 | 4 | 7 | +------+------+------+--------------------+
Пользовательские переменные могут быть присвоены значение от ограниченного набора типов данных: целое число, десятичная, двоичная или недвоичная строка с плавающей точкой, или NULL значение. Присвоение десятичных и действительных значений не сохраняет точность или масштаб значения. Значение типа кроме одного из допустимых типов преобразовывается в допустимый тип. Например, значение, имеющее временный или пространственный тип данных, преобразовывается в двоичную строку.
2. Написать sql- запрос, осуществляющий использование агрегатных функций.
Например, оператор
Select count(*) from Pers
подсчитает полное количество записей в таблице Pers, а оператор
Select count(*) from Pers where Dep=’Бухгалтерия’
выдаст число записей сотрудников бухгалтерии. Оператор
Select count(DISTINCT Dep) from Pers
вернет число различных подразделений, упомянутых в поле Dep таблицы Pers
2. Select min(Year_r), max(Year_r), avg(Year_r) from Pers
вернет минимальное, максимальное и среднее значение года рождения, а оператор
Select min(GetDate()-Year_r), max(GetDate()-Year_r), avg(GetDate()-Year_r) from Pers
выдаст аналогичные данные, но относящиеся к возрасту сотрудников
3.Написать вложенный SQL-запрос на примере любой базы данных.
Вложенные запросы
В рамках нашего примера, допустим, что нам понадобилось узнать имена узлов, которые посещали сайт www.dom2.ru. Требуемую информацию можно получить запросом:
SELECT hst_name FROM hosts WHERE hst_pcode IN
(SELECT vis_hstcode FROM visits, sites
WHERE (sit_pcode = vis_sitcode) AND (sit_name LIKE 'www.dom2.ru'));
Рассмотрим этот запрос более пристально. Первый оператор SELECT нужен для выборки имен узлов. Чтобы выбрать требуемые нам имена, в запросе указана секция WHERE, в которой первичный ключ таблицы «Узлы» (hst_pcode) проверяется на принадлежность множеству (оператор IN). Судя по всему, множество для проверки на принадлежность должен вернуть второй оператор SELECT, находящийся в скобках. Рассмотрим его отдельно:
SELECT vis_hstcode FROM visits, sites WHERE (sit_pcode = vis_sitcode)
AND (sit_name LIKE 'www.dom2.ru')
Как видно из списка полей для выборки, запрос возвращает одно поле - vis_hstcode. Это коды узлов из таблицы «Посещения» (visits). Но после слова FROM указано две таблицы - visits и sites. Это нужно для удобства. Дело в том, что имена сайтов хранятся в таблице «Сайты» (sites), а в таблице «Посещения» - только идентификаторы сайтов. Таким образом, чтобы выбрать из таблицы «Посещения» данные только для сайта www.dom2.ru - мы связали две таблицы и указали в условии привычное для человека имя сайта. Подробнее о связывании речь пойдет чуть ниже. Таким образом, запрос, вернувший нам коды узлов будет являться вложенным запросом.
БИЛЕТ № 19
