Автоматизированная система управления путевым хозяйством как часть АСУЖТ, страница 3

Все процедуры обработки данных осуществляются с применением операций на множествах (объединение, пересечение, разность, произведение) и реляционных операций (выбрать, спроецировать, соединить, разделить). Возможны любые связи между таблицами, осуществляемые по одному или нескольким полям. Например, для определения допускаемой скорости движения поездов по участку с дефектными шпалами определяется пересечение таблиц: "Покилометровые характеристики верхнего строения пути", "Дефектные шпалы", "Рельсы", "Допускаемые скорости по состоянию шпал" и др. Контроль всех связей осуществляет СУБД.

Простейший вид реляционной базы данных – таблица. Полная база данных – это несколько связанных друг с другом таблиц. В качестве примера в табл. 1 приведена таблица АРМ-ТО "Экспликация стрелочных переводов".

Данные могут храниться в разных форматах, называемых типами данных. Различные СУБД имеют свои названия для каждого типа данных, поэтому здесь мы не указываем конкретное название типа в той или иной СУБД, а даем их перечисление с описанием назначения. В большинстве СУБД приняты следующие типы данных.

1)  Числовой для целых значений (обычно обозначаемый Integer, Long, Short, Byte или др.) – предусматривает хранение чисел различной длины.

2)  Числовой для дробных значений (Real или др.) – предусматривает хранение десятичных дробей в форме с плавающей запятой.

3)   Календарный тип (Data, Calendar или др.) является одним из вариантов числового типа. Даты хранятся в виде числа, равного количеству дней от начальной даты. Так, в базах данных СУБД Clarion (используется в АРМ-ТО), начальная дата – 1.01.1900 г. На дисплей данные выводятся в определенных форматах, отличающихся порядком отображения года (yy), месяца (mm), и дня (dd), количеством знаков и разделителями между значениями года, месяца и дня.

4)  Символьный или строковый формат (C, Char, String(N) или др.) – предусматривает хранение значений, равных одному символу или строки длиной N символов.

5)  Логический тип предусматривает хранение одного бита информации: "Истина" (TRUE, .T.) или "Ложь" (FALSE, .F.). Например, одного байта информации достаточно, чтобы указать, имеется на переезде шлагбаум, или нет.

6)  Тип Memo (Примечания) – предусматривает хранение текста любой длины. Сама информация при этом хранится в специальных файлах примечаний, а в таблице базы данных хранится лишь ссылка, указывающая место нахождения примечания. Таким же образом организуется хранение в таблицах изображений, аудиофайлов и других объектов.


Таблица 1.

Фрагмент таблицы базы данных "Экспликация стрелочных переводов"

Номера записей ↓

Поля

Имена полей →

RST(K)

PARK(K)

NST(K)

WAY

KW

NAPR

TP

KREST

BR

TOP

D

Записи

1

030006

A

1

3

1

2

1

70

125,1

35877

2

030006

А

3

I

1

2

3

2

66

50,1

34205

3

030006

А

11-17

15

5

1

2

1

70

5.2

35102

Примечания:

Назначение поля:

код раздельного пункта

Парк станции

№ стр. пер.

№ пути

назначение пути

направление

тип рельса

марка крестовины

число брусьев

пропущенный тоннаж

дата укладки

Логический смысл для записи № 1:

ст. С-Петербург Сорт. Мос. Окт. ж.д.

парк А

стр. перевод № 1

путь 2А

приемо-отправочный

правый

Р65

1/11

70

125,1 млн. т брутто

01. 07. 1998 г.

Тип переменной:

целое

строка

(2 зн.)

строка

(7 зн.)

строка

(3 зн.)

байт

байт

байт

байт

целое

с плавающей запятой

дата