Цель курса - предоставить слушателям знания и навыки, необходимые для построения базовых запросов и программирования на SQL для Firebird SQL Server, Microsoft SQL Server и Oracle.
Авторский дистанционный курс поставлен по одноименному учебнику пособию Маркина А.В. с грифом УМО вузов по университетскому политехническому образованию.
На курсе вы научитесь свободно и уверенно пользоваться современными базами данных, языком структурированных запросов и процедурным языком.
Курс предназначен для начинающих администраторов и разработчиков баз данных и приложений.
Требуемая предварительная подготовка:
- Умение работать в Windows или Linux
- Знание основ программирования
- Базовые знания терии реляционных баз данных
По окончании курса Вы будете уметь:
- Использовать современные базы данных
- Создавать запросы к базам данных на языке SQL
- Использовать сложные конструкции процедурного SQL для программирования хранимых процедур и триггеров
- Управлять доступом к объектам базы данных
- Работать с транзакциями
Здесь можно проверить полученные знания.
СОДЕРЖАНИЕ
Предисловие
1.Реляционная модель данных
1.1. Определение реляционной модели
1.2. Таблицы
1.3. Первичные ключи
1.4. Внешние ключи
1.5. Связи между таблицами
1.6. Нормализация отношений
1.7. Модели базы данных на логическом и физическом уровнях
1.8. Целостность данных
1.9. Архитектура «клиент-сервер»
Контрольные вопросы
2. Введение в SQL
2.1. Объекты структуры базы данных
2.2. Функции SQL
2.3. Достоинства SQL
2.4. Формы использования SQL
2.5. Firebird SQL Server
2.6. Правила синтаксисаи основные запросы SQL
2.7. Имена объектов в SQL. Константы,отсутствующие данные
2.8. Выражения
2.9. Типы данных
Контрольные вопросы
3. Язык выборки данных
3.1. Синтаксис запроса SELECT
3.2. Запросы к одной таблице
3.2.1. Предложения SELECT и FROM
3.2.2. Предложение WHERE
3.2.2.1. Простое сравнение
3.2.2.2. Проверка на принадлежность диапазону значений
3.2.2.3. Проверка на соответствие шаблону
3.2.2.4. Проверка на наличие последовательности символов
3.2.2.5. Проверка на совпадение с началом строки
3.2.2.6. Проверка на членство во множестве
3.2.2.7. Проверка значения на NULL
3.2.2.8. Проверка двух значений на отличие
3.2.2.9. Проверка на соответствие регулярному выражению
3.2.2.10. Составные условия поиска
3.2.3. Функции в SQL
3.2.3.1. Классификация функций
3.2.3.2. Скалярные функции
3.2.3.3. Агрегатные функции
3.2.3.4. Функции для списка значений
3.2.3.5. Дополнительные возможности вывода в предложении SELECT
3.2.4. Предложение GROUP BY
3.2.5. Предложение HAVING
3.2.6. Сортировка результатов запроса
3.3. Многотабличные и вложенные запросы
3.3.1. Соединения таблиц
3.3.1.1. Неявное соединение таблиц
3.3.1.2. Явное соединение таблиц
3.3.1.3. Стандартныесоединения (объединения) таблиц
3.3.1.4. Соединение таблицы со своей копией
3.3.2. Запросы с вложенными запросами
3.3.2.1. Виды вложенных запросов
3.3.2.2. Запросы с простыми подзапросами
Простые подзапросы в предложениях WHERE и HAVING
3.3.2.3. Запросы со связанными подзапросами
3.3.2.4. Предикаты ANY и ALL
3.3.2.5. Предикат SINGULAR
3.3.2.6. Предикат EXISTS
3.3.3. Объединение результатовнескольких запросов
3.3.4. Рекурсивные подзапросыв предложении WITH
3.4. Оптимизация запросов на выборку данных
3.4.1. Обработка запроса в реляционных СУБД
3.4.2. Основные направления анализа «медленных» SQL-запросов
3.4.3. Рекомендации по разработке и реструктуризации запросов конкретных типов
Контрольные вопросы
4. Язык определения данных
4.1. Домены
4.2. Создание, изменение и удаление базовых таблиц БД
4.2.1. Создание таблицы
4.2.2. Определение ограничений столбца
4.2.3. Определение ограничений на таблицу
4.2.4. Удаление таблицы БД
4.2.5. Изменение определения таблицы
4.3. Индексы
4.4. Временные таблицы
4.5. Представления
4.6. Комментарии к объектам базы данных
Контрольные вопросы
5. Язык манипулирования данными
5.1. Добавление новых данных
5.1.1. Однострочный запрос INSERT
5.1.2. Многострочный запрос INSERT
5.2. Обновление существующих данных
5.2.1. Простой запрос UPDATE
5.2.2. Запрос UPDATE с подзапросом
5.3. Обобщенное обновлениеи добавление данных
5.4. Слияние данных
5.5. Удаление существующих данных
5.5.1. Простой запрос DELETE
5.5.2. Запрос DELETE с подзапросом
5.6. Обновление представлений
Контрольные вопросы
6. Процедурный язык
6.1. Основы разработки модулей на PSQL
6.1.1. Переменные
6.1.2. Условные операторы
6.1.2.1. Оператор ветвления IF
6.1.2.2. Оператор WHILE
6.1.3. Курсоры в PSQL
6.1.3.1. Неявный курсор
6.1.3.2. Явный курсор
6.1.4. SQL-сценарии
6.1.5. Генераторы
6.1.6. Исключительные ситуации
6.2. Хранимые процедуры
6.2.1. Определение хранимых процедур
6.2.2. Процедуры выбора
6.2.3. Выполняемые процедуры
6.3. Триггеры
6.3.1. Триггеры DML
6.3.1.1. Определение триггера
6.3.1.2. Примеры поддержания ссылочной целостности
6.3.1.3. Модификация и удаление триггера
6.3.2. Триггеры базы данных
6.4. Выполняемые блоки
Контрольные вопросы
7.1. Управление доступом к данным
7.1.1. Требования к безопасности данных
7.1.2. Привилегии доступа и передача привилегий
7.1.3. SQL роли
7.1.4. Привилегии на представления
7.1.5. Отмена привилегий
7.1.6. Автоматизированное управление доступом
7.2. Транзакции
7.2.1. Понятие транзакции
7.2.2. Восстановление данных
7.2.3. Параллелизм
Контрольные вопросы
Лабораторный практикум
Лабораторная работа № 1. IBExpert инструмент разработчика и администратора баз данных Firebird. Учебная база данных
Лабораторная работа № 2. Построение простых запросов на чтение данных
Лабораторная работа № 3. Построение многотабличных и вложенных запросов на чтение данных
Лабораторная работа № 4. Построение запросов на определение данных
Лабораторная работа № 5. Построение запросов на модификацию данных
Лабораторная работа № 6. Программирование хранимых процедур
Лабораторная работа № 7. Программирование триггеров
Лабораторная работа № 8. Построение запросов управления доступом
Библиографический список
Приложение А. Описание учебной базы данных
Приложение Б. СИСТЕМНЫЙ КАТАЛОГ БАЗЫ ДАННЫХ
Б.1. Общие сведения о базе данных
Б.2. Домены
Б.3. Отношения (таблицы и представления)
Б.4. Процедуры
Б.5. Триггеры
Б.6. Зависимости
Приложение В. Скрипт для создания учебной базы данных (Firebird SQL Server)
Приложение А. Описание учебной БД
Жилищно-коммунальное хозяйство (ЖКХ) является одной из основных отраслей народного хозяйства Российской Федерации, охватывающей многоотраслевой производственно-технический комплекс, потребность в продукции которого практически не ограничена. Система ЖКХ представлена жилыми, общественными зданиями, эксплуатационными, управляющими, ремонтно-строительными, транспортными, ресурсоснабжающими и другими предприятиями, составляющими сложную социально-экономическую систему, от результативности, функционирования которой зависит развитие городских объектов и состояние среды обитания жителей городов и других населеных пунктов.
Расчет и оплата жилищно-коммунальных платежей при кажущейся элементарности сервиса - важная составляющая повседневного быта граждан. Каждый из нас для удовлетворения своих жизненных потребностей пользуется жилищными услугами, расходует коммунальные ресурсы. Компании, оказывающие такие услуги и поставляющие коммунальные ресурсы, ежемесячно производят начисление платы за них, а обязанность граждан регулярно их оплачивать.
Правила предоставления коммунальных услуг собственникам и пользователям помещений в многоквартирных и жилых домах, а также порядок расчета и перерасчета размера платы за коммунальные услуги с использованием приборов учета и при их отсутствии регулируются соответствующими постановлениями правительства.
Учебная БД представляет собой очень упрощенный пример информационной модели расчетно-аналитической составляющей расчетно-платежного комплекса «Абонент+», которая используется для информационного обеспечения деятельности организаций по оказанию населению жилищно-коммунальных услуг и расчетам за них [3]. Учебная БД состоит из 8-ми таблиц: 5-ти таблиц-справочников и 3-х информационных таблиц.
В учебной БД используются такие таблицы-справочники:
- Street. Справочник улиц, в домах которых проживают абоненты. Поля таблицы:
- StreetCD - уникальный код улицы (первичный ключ);
- StreetNM - название улицы, расшифровывающее код улицы.
- Abonent. Справочник абонентов. Поля таблицы:
- AccountCD - номер лицевого счета абонента, уникальным образом идентифицирующий каждого из абонентов (первичный ключ);
- StreetCD - код улицы, на которой проживает абонент (внешний ключ, ссылающийся на первичный ключ таблицы Street);
- HouseNo - номер дома, в котором проживает абонент;
- FlatNo - номер квартиры;
- Fio - фамилия, имя и отчество абонента в формате «Фамилия И.О.»;
- Phone - номер телефона.
- Services. Справочник услуг, оказываемых абонентам жилищно-коммунальными организациями. Поля таблицы:
- ServiceCD - код услуги (первичный ключ);
- ServiceNM - наименование услуги.
- Disrepair. Справочник типовых неисправностей газового оборудования абонентов. Поля таблицы:
- FailureCD - код неисправности газового оборудования (первичный ключ);
- FailureNM - наименование неисправности газового оборудования.
- Executor. Справочник исполнителей заявок, поданных абонентами на ремонт газового оборудования. Исполнителями являются работники ремонтной службы газораспределительной организации, оказывающей соответствующие услуги. Поля таблицы:
- ExecutorCD - уникальный код, идентифицирующий исполнителей ремонтных заявок (первичный ключ);
- Fio - фамилия, имя и отчество исполнителя в формате «Фамилия И.О.».
В качестве информационных таблиц учебной БД выделены следующие таблицы:
- NachislSumma. Таблица для хранения информации о размерах ежемесячных начислений плат абонентам за оказанные им услуги (которые расшифровываются в справочнике услуг Services). Оплата за ремонт газового оборудования производится по факту оказания услуги, и начисление за него не производится. Поля таблицы:
- NachislFactCD - уникальный идентификатор факта начисления (первичный ключ);
- AccountCD - номер лицевого счета абонента, которому было сделано начисление (внешний ключ, ссылающийся на первичный ключ таблицы Abonent);
- ServiceCD - код услуги, за которую выполнено начисление (внешний ключ, ссылающийся на первичный ключ таблицы Services);
- NachislSum - значение начисленной суммы;
- NachislMonth - номер месяца, за который произведено начисление;
- NachislYear - год, за месяц которого выполнено начисление.
- PaySumma. Таблица для хранения значений оплат, внесенных абонентами за оказанные им услуги. Для каждого факта оплаты по какой-либо услуге указывается дата осуществления оплаты, оплачиваемые месяц и год. Поля таблицы:
- PayFactCD - уникальный идентификатор факта оплаты по услуге Request (первичный ключ);
- AccountCD - номер лицевого счета абонента, оплатившего оказанную ему услугу (внешний ключ, ссылающийся на первичный ключ таблицы Abonent);
- ServiceCD - код оплаченной услуги (внешний ключ, ссылающийся на первичный ключ таблицы Services);
- PaySum - значение оплаченной суммы;
- PayDate - дата оплаты;
- PayMonth - номер оплачиваемого месяца;
- PayYear - оплачиваемый год.
Таким образом, при сопоставлении этой информации по конкретному абоненту с данными, хранящимися в таблице NachislSumma, можно вычислить размер долга (дебет) или переплаты (кредит) у данного абонента на указанный месяц года.
- Request. Таблица для хранения информации о заявках абонентов на ремонт газового оборудования. Каждая ремонтная заявка характеризуется номером лицевого счета абонента (расшифровка в справочнике Abonent), заявившего определенную неисправность газового оборудования (расшифровка в справочнике Disrepair) в его доме или квартире, исполнителем ремонтной работы (справочник Executor), датой регистрации заявки, датой выполнения ремонта и признаком погашения (1/0). Поля таблицы:
- RequestCD - уникальный код ремонтной заявки (первичный ключ);
- AccountCD - номер лицевого счета абонента, подавшего данную ремонтную заявку (внешний ключ, ссылающийся на первичный ключ таблицы Abonent);
- FailureCD - код неисправности газового оборудования, заявленной абонентом в данной ремонтной заявке (внешний ключ, ссылающийся на первичный ключ таблицы Disrepair);
- ExecutorCD - код исполнителя, ответственного за выполнение данной ремонтной заявки (внешний ключ, ссылающийся на первичный ключ таблицы Executor);
- IncomingDate - дата поступления заявки;
- ExecutionDate - дата выполнения заявки;
- Executed - поле логического типа, признак погашения заявки
В общем случае зарегистрированная ремонтная заявка может быть:
- не назначена ни одному из исполнителей, а следовательно не выполнена и не погашена;
- назначена одному из исполнителей, но не выполнена им, а следовательно и не погашена;
- назначена одному из исполнителей, выполнена им, но не погашена;
- назначена одному из исполнителей, выполнена им и погашена
ER-модели учебной БД на логическом и физическом уровнях представлены соответственно на рис. 1.5 и рис. 1.6.
Для поддержания правил ссылочной целостности, реализующих запрет удаления записи в родительской таблице при наличии связанных записей в дочерних таблицах, в учебной БД определены следующие триггеры.
Td_Abonent. Триггер запускается после удаления строки в таблице Abonent. Если в таблицах NachislSumma или PaySumma имеются записи с внешним ключом AccountCD, ссылающимся на удаляемую строку таблицы Abonent, то триггер вызывает исключение Del_Restrict и операция удаления прерывается.
Td_Services. Триггер запускается после удаления строки в таблице Services. Если в таблицах PaySumma или NachislSumma имеются записи с внешним ключом ServiceCD, ссылающимся на удаляемую строку в таблице Services, то триггер вызывает пользовательское исключение Del_Restrict и прерывает выполнение операции.
Текст определения описанных триггеров приведен в скрипте по созданию учебной БД.
Ниже приводятся таблицы учебной БД. Весь материал учебного пособия, все запросы основаны именно на этих данных. Анализ таблиц поможет понять логику получения результатов.
Таблица А.1. Данные таблицы Street
StreetCD |
StreetNM |
1 |
ЦИОЛКОВСКОГО УЛИЦА |
2 |
НОВАЯ УЛИЦА |
3 |
ВОЙКОВ ПЕРЕУЛОК |
4 |
ТАТАРСКАЯ УЛИЦА |
5 |
ГАГАРИНА УЛИЦА |
6 |
МОСКОВСКАЯ УЛИЦА |
7 |
КУТУЗОВА УЛИЦА |
8 |
МОСКОВСКОЕ ШОССЕ |
Таблица А.2. Данные таблицы Abonent
AccountCD |
StreetCD |
HouseNo |
FlatNo |
Fio |
Phone |
005488 |
3 |
4 |
1 |
Аксенов С.А. |
556893 |
015527 |
3 |
1 |
65 |
Конюхов В.С. |
761699 |
080047 |
8 |
39 |
36 |
Шубина Т. П. |
257842 |
080270 |
6 |
35 |
6 |
Тимошкина Н.Г. |
321002 |
080613 |
8 |
35 |
11 |
Лукашина Р.М. |
254417 |
115705 |
3 |
1 |
82 |
Мищенко Е.В. |
769975 |
126112 |
4 |
7 |
11 |
Маркова В.П. |
683301 |
136159 |
7 |
39 |
1 |
Свирина З.А. |
NULL |
136160 |
4 |
9 |
15 |
Шмаков С.В. |
NULL |
136169 |
4 |
7 |
13 |
Денисова Е.К. |
680305 |
443069 |
4 |
51 |
55 |
Стародубцев Е.В. |
683014 |
443690 |
7 |
5 |
1 |
Тулупова М.И. |
214833 |
Таблица А.3. Данные таблицы Services
ServiceCD |
ServiceNM |
1 |
Газоснабжение |
2 |
Электроснабжение |
3 |
Теплоснабжение |
4 |
Водоснабжение |
Таблица А.4. Данные таблицы Disrepair
FailureCD |
FailureNM |
1 |
Засорилась водогрейная колонка |
2 |
Не горит АГВ |
3 |
Течет из водогрейной колонки |
4 |
Неисправна печная горелка |
5 |
Неисправен газовый счетчик |
6 |
Плохое поступление газа на горелку плиты |
7 |
Туго поворачивается пробка крана плиты |
8 |
При закрытии краника горелка плиты не гаснет |
12 |
Неизвестна |
Таблица А.5. Данные таблицы Executor
ExecutorCD |
Fio |
1 |
Стародубцев Е.М. |
2 |
Булгаков Т.И. |
3 |
Шубин В.Г. |
4 |
Шлюков М.К. |
5 |
Школьников С.М. |
6 |
Степанов А.В. |
Таблица А.6. Данные таблицы NachislSumma
NachislfactCD |
AccountCD |
ServiceCD |
NachislSum |
NachislMonth |
NachislYear |
|||
1 |
136160 |
2 |
56 |
1 |
2013 |
|||
2 |
005488 |
2 |
46 |
12 |
2010 |
|||
3 |
005488 |
2 |
56 |
4 |
2013 |
|||
4 |
115705 |
2 |
40 |
1 |
2010 |
|||
5 |
115705 |
2 |
250 |
9 |
2011 |
|||
6 |
136160 |
1 |
18,3 |
1 |
2012 |
|||
7 |
080047 |
2 |
80 |
10 |
2012 |
|||
8 |
080047 |
2 |
80 |
10 |
2011 |
|||
9 |
080270 |
2 |
46 |
12 |
2011 |
|||
10 |
080613 |
2 |
56 |
6 |
2011 |
|||
11 |
115705 |
2 |
250 |
9 |
2010 |
|||
12 |
115705 |
2 |
58,7 |
8 |
2011 |
|||
13 |
136160 |
2 |
20 |
5 |
2011 |
|||
15 |
136169 |
2 |
20 |
5 |
2011 |
|||
16 |
136169 |
2 |
58,7 |
11 |
2011 |
|||
17 |
443069 |
2 |
80 |
9 |
2011 |
|||
18 |
443069 |
2 |
38,5 |
8 |
2011 |
|||
19 |
005488 |
2 |
58,7 |
12 |
2011 |
|||
20 |
015527 |
1 |
28,32 |
7 |
2012 |
|||
21 |
080047 |
1 |
19,56 |
3 |
2012 |
|||
22 |
080613 |
1 |
10,6 |
9 |
2012 |
|||
23 |
443069 |
1 |
38,28 |
12 |
2012 |
|||
24 |
015527 |
1 |
38,32 |
4 |
2013 |
|||
25 |
115705 |
1 |
37,15 |
10 |
2013 |
|||
26 |
080613 |
1 |
12,6 |
8 |
2010 |
|||
27 |
136169 |
1 |
25,32 |
1 |
2013 |
|||
28 |
080270 |
1 |
57,1 |
2 |
2012 |
|||
29 |
136159 |
1 |
8,3 |
8 |
2013 |
|||
30 |
005488 |
1 |
62,13 |
4 |
2010 |
|||
31 |
115705 |
1 |
37,8 |
5 |
2011 |
|||
32 |
443690 |
1 |
17,8 |
6 |
2012 |
|||
33 |
080047 |
1 |
22,56 |
5 |
2013 |
|||
34 |
126112 |
1 |
15,3 |
8 |
2010 |
|||
35 |
080047 |
1 |
32,56 |
9 |
2011 |
|||
36 |
080613 |
1 |
12,6 |
4 |
2012 |
|||
37 |
115705 |
1 |
37,15 |
11 |
2013 |
|||
38 |
080270 |
1 |
58,1 |
12 |
2010 |
|||
Окончание табл. А.6.
NachislfactCD |
AccountCD |
ServiceCD |
NachislSum |
NachislMonth |
NachislYear |
|||
39 |
136169 |
1 |
28,32 |
1 |
2011 |
|||
40 |
015527 |
1 |
18,32 |
2 |
2012 |
|||
41 |
443690 |
1 |
21,67 |
3 |
2013 |
|||
42 |
080613 |
1 |
22,86 |
4 |
2010 |
|||
43 |
080270 |
1 |
60,1 |
5 |
2011 |
|||
44 |
136169 |
1 |
28,32 |
2 |
2012 |
|||
45 |
080047 |
1 |
22,2 |
7 |
2013 |
|||
46 |
126112 |
1 |
25,3 |
8 |
2011 |
|||
47 |
443069 |
1 |
38,32 |
9 |
2011 |
|||
48 |
136159 |
1 |
8,3 |
10 |
2012 |
|||
49 |
115705 |
1 |
37,15 |
6 |
2013 |
|||
50 |
136160 |
1 |
18,3 |
12 |
2010 |
|||
51 |
005488 |
3 |
279,8 |
5 |
2012 |
|||
52 |
005488 |
3 |
266,7 |
2 |
2013 |
|||
53 |
015527 |
3 |
343,36 |
11 |
2013 |
|||
54 |
080047 |
3 |
271,6 |
2 |
2013 |
|||
55 |
080270 |
3 |
278,25 |
11 |
2013 |
|||
56 |
080613 |
3 |
254,4 |
7 |
2011 |
|||
57 |
080613 |
3 |
258,8 |
2 |
2013 |
|||
58 |
080613 |
3 |
239,33 |
5 |
2013 |
|||
59 |
126112 |
3 |
179,9 |
4 |
2012 |
|||
60 |
136159 |
3 |
180,13 |
9 |
2013 |
|||
61 |
136160 |
3 |
238,8 |
3 |
2010 |
|||
62 |
136160 |
3 |
237,38 |
3 |
2011 |
|||
63 |
136169 |
3 |
349,19 |
6 |
2012 |
|||
64 |
136169 |
3 |
346,18 |
7 |
2012 |
|||
65 |
443690 |
3 |
290,33 |
3 |
2013 |
|||
66 |
015527 |
4 |
580,1 |
7 |
2012 |
|||
67 |
015527 |
4 |
611,3 |
10 |
2013 |
|||
68 |
080270 |
4 |
444,34 |
3 |
2011 |
|||
69 |
080270 |
4 |
453,43 |
6 |
2012 |
|||
70 |
080270 |
4 |
454,6 |
4 |
2013 |
|||
71 |
115705 |
4 |
553,85 |
1 |
2012 |
|||
72 |
126112 |
4 |
435,5 |
6 |
2012 |
|||
73 |
136159 |
4 |
349,38 |
4 |
2011 |
|||
74 |
136159 |
4 |
418,88 |
6 |
2012 |
|||
75 |
136169 |
4 |
528,44 |
10 |
2013 |
|||
76 |
443069 |
4 |
466,69 |
5 |
2012 |
|||
77 |
443069 |
4 |
444,45 |
10 |
2013 |
|||
78 |
443690 |
4 |
480,88 |
8 |
2011 |
|||
79 |
443690 |
4 |
500,13 |
9 |
2012 |
|||
Таблица А.7. Данные таблицы PaySumma
PayFactCD |
AccountCD |
ServiceCD |
PaySum |
PayDate |
PayMonth |
PayYear |
1 |
005488 |
2 |
58,7 |
08.01.2012 |
12 |
2011 |
2 |
005488 |
2 |
40 |
06.01.2011 |
12 |
2010 |
3 |
005488 |
2 |
56 |
06.05.2013 |
4 |
2013 |
4 |
115705 |
2 |
40 |
10.02.2010 |
1 |
2010 |
5 |
115705 |
2 |
250 |
03.10.2011 |
9 |
2011 |
6 |
136160 |
2 |
20 |
13.06.2011 |
5 |
2011 |
7 |
136160 |
2 |
56 |
12.02.2013 |
1 |
2013 |
8 |
136169 |
2 |
20 |
22.06.2011 |
5 |
2011 |
9 |
080047 |
2 |
80 |
26.11.2012 |
10 |
2012 |
10 |
080047 |
2 |
80 |
21.11.2011 |
10 |
2011 |
11 |
080270 |
2 |
30 |
03.01.2012 |
12 |
2011 |
12 |
080613 |
2 |
58,5 |
19.07.2011 |
6 |
2011 |
13 |
115705 |
2 |
250 |
06.10.2010 |
9 |
2010 |
14 |
115705 |
2 |
58,7 |
04.09.2011 |
8 |
2011 |
15 |
136169 |
2 |
58,7 |
01.12.2011 |
11 |
2011 |
16 |
443069 |
2 |
80 |
03.10.2011 |
9 |
2011 |
17 |
443069 |
2 |
38,5 |
13.09.2011 |
8 |
2011 |
18 |
136160 |
1 |
18 |
05.02.2012 |
1 |
2012 |
19 |
015527 |
1 |
30 |
03.08.2012 |
7 |
2012 |
20 |
080047 |
1 |
19,56 |
02.04.2012 |
3 |
2012 |
21 |
080613 |
1 |
11 |
03.10.2012 |
9 |
2012 |
22 |
443069 |
1 |
38,28 |
04.02.2013 |
12 |
2012 |
23 |
015527 |
1 |
40 |
07.05.2013 |
4 |
2013 |
24 |
115705 |
1 |
37,15 |
04.11.2013 |
10 |
2013 |
25 |
080613 |
1 |
12 |
20.09.2010 |
8 |
2010 |
26 |
136169 |
1 |
25,32 |
03.02.2013 |
1 |
2013 |
27 |
080270 |
1 |
60 |
05.03.2012 |
2 |
2012 |
28 |
136159 |
1 |
8,3 |
10.09.2013 |
8 |
2013 |
29 |
005488 |
1 |
65 |
03.05.2010 |
4 |
2010 |
30 |
115705 |
1 |
37,8 |
12.07.2011 |
5 |
2011 |
31 |
443690 |
1 |
20 |
10.07.2012 |
6 |
2012 |
32 |
080047 |
1 |
22,56 |
25.06.2013 |
5 |
2013 |
33 |
126112 |
1 |
15,3 |
08.09.2010 |
8 |
2010 |
34 |
080047 |
1 |
32,56 |
18.10.2011 |
9 |
2011 |
35 |
080613 |
1 |
12,6 |
22.05.2012 |
4 |
2012 |
36 |
115705 |
1 |
37,15 |
23.12.2013 |
11 |
2013 |
Продолжение табл. А.7.
PayFactCD |
AccountCD |
ServiceCD |
PaySum |
PayDate |
PayMonth |
PayYear |
37 |
080270 |
1 |
58,1 |
07.01.2011 |
12 |
2010 |
38 |
136169 |
1 |
28,32 |
08.02.2011 |
1 |
2011 |
39 |
015527 |
1 |
20 |
18.03.2012 |
2 |
2012 |
40 |
443690 |
1 |
19,47 |
10.04.2013 |
3 |
2013 |
41 |
080613 |
1 |
22,86 |
04.05.2010 |
4 |
2010 |
42 |
080270 |
1 |
60 |
07.06.2011 |
5 |
2011 |
43 |
136169 |
1 |
28,32 |
05.03.2012 |
2 |
2012 |
44 |
080047 |
1 |
22,2 |
10.08.2013 |
7 |
2013 |
45 |
126112 |
1 |
25,3 |
10.09.2011 |
8 |
2011 |
46 |
443069 |
1 |
38,32 |
09.10.2011 |
9 |
2011 |
47 |
136159 |
1 |
8,3 |
14.11.2012 |
10 |
2012 |
48 |
115705 |
1 |
37,15 |
10.08.2013 |
6 |
2013 |
49 |
136160 |
1 |
16 |
07.01.2011 |
12 |
2010 |
50 |
005488 |
3 |
280 |
10.06.2012 |
5 |
2012 |
51 |
005488 |
3 |
260 |
11.03.2013 |
2 |
2013 |
52 |
015527 |
3 |
345 |
15.12.2013 |
11 |
2013 |
53 |
080047 |
3 |
271,6 |
12.03.2013 |
2 |
2013 |
54 |
080270 |
3 |
278 |
06.12.2013 |
11 |
2013 |
55 |
080613 |
3 |
254,4 |
10.08.2011 |
7 |
2011 |
56 |
080613 |
3 |
258,8 |
08.03.2013 |
2 |
2013 |
57 |
080613 |
3 |
239,35 |
11.06.2013 |
5 |
2013 |
58 |
126112 |
3 |
179,9 |
01.05.2012 |
4 |
2012 |
59 |
136159 |
3 |
180,13 |
21.10.2013 |
9 |
2013 |
60 |
136160 |
3 |
240 |
04.04.2010 |
3 |
2010 |
61 |
136160 |
3 |
200 |
06.04.2011 |
3 |
2011 |
62 |
136169 |
3 |
349,19 |
14.07.2012 |
6 |
2012 |
63 |
136169 |
3 |
346,18 |
13.08.2012 |
7 |
2012 |
64 |
443690 |
3 |
295 |
09.04.2013 |
3 |
2013 |
65 |
015527 |
4 |
580,1 |
08.08.2012 |
7 |
2012 |
66 |
015527 |
4 |
611,3 |
03.11.2013 |
10 |
2013 |
67 |
080270 |
4 |
444,5 |
18.04.2011 |
3 |
2011 |
68 |
080270 |
4 |
450 |
14.07.2012 |
6 |
2012 |
69 |
080270 |
4 |
460 |
12.05.2013 |
4 |
2013 |
70 |
115705 |
4 |
553,85 |
02.02.2012 |
1 |
2012 |
71 |
126112 |
4 |
435,5 |
12.07.2012 |
6 |
2012 |
72 |
136159 |
4 |
349,38 |
18.05.2011 |
4 |
2011 |
Окончание табл. А.7.
PayFactCD |
AccountCD |
ServiceCD |
PaySum |
PayDate |
PayMonth |
PayYear |
73 |
136159 |
4 |
420 |
09.07.2012 |
6 |
2012 |
74 |
136169 |
4 |
528,44 |
26.11.2013 |
10 |
2013 |
75 |
443069 |
4 |
466,69 |
03.06.2012 |
5 |
2012 |
76 |
443069 |
4 |
444,45 |
16.11.2013 |
10 |
2013 |
77 |
443690 |
4 |
485 |
05.09.2011 |
8 |
2011 |
Таблица А.8. Данные таблицы Request
RequestCD |
AccountCD |
ExecutorCD |
FailureCD |
IncomingDate |
ExecutionDate |
Executed |
1 |
005488 |
1 |
1 |
17.12.2011 |
20.12.2011 |
True |
2 |
115705 |
3 |
1 |
07.08.2011 |
12.08.2011 |
True |
3 |
015527 |
1 |
12 |
28.02.2012 |
08.03.2012 |
False |
5 |
080270 |
4 |
1 |
31.12.2011 |
NULL |
False |
6 |
080613 |
1 |
6 |
16.06.2011 |
24.06.2011 |
True |
7 |
080047 |
3 |
2 |
20.10.2012 |
24.10.2012 |
True |
9 |
136169 |
2 |
1 |
06.11.2011 |
08.11.2011 |
True |
10 |
136159 |
3 |
12 |
01.04.2011 |
03.04.2011 |
False |
11 |
136160 |
1 |
6 |
12.01.2013 |
12.01.2013 |
True |
12 |
443069 |
5 |
2 |
08.08.2011 |
10.08.2011 |
True |
13 |
005488 |
5 |
8 |
04.09.2010 |
05.12.2010 |
True |
14 |
005488 |
4 |
6 |
04.04.2013 |
13.04.2013 |
True |
15 |
115705 |
4 |
5 |
20.09.2010 |
23.09.2010 |
True |
16 |
115705 |
NULL |
3 |
28.12.2011 |
NULL |
False |
17 |
115705 |
1 |
5 |
15.08.2011 |
06.09.2011 |
True |
18 |
115705 |
2 |
3 |
28.12.2012 |
04.01.2013 |
True |
19 |
080270 |
4 |
8 |
17.12.2011 |
27.12.2011 |
True |
20 |
080047 |
3 |
2 |
11.10.2011 |
11.10.2011 |
True |
21 |
443069 |
1 |
2 |
13.09.2011 |
14.09.2011 |
True |
22 |
136160 |
1 |
7 |
18.05.2011 |
25.05.2011 |
True |
23 |
136169 |
5 |
7 |
07.05.2011 |
08.05.2011 |
True |