Поделиться

суббота, 4 августа 2012 г.

"Первая" БД

Интересно открывать что-то новое, когда ты думаешь, что оно - давно известное старое. Мне за свою жизнь приходилось создавать множество баз данных (БД). В теории я всегда знал, что они нужны для хранения, поиска и анализа сложноструктурированной информации (опять-таки в теории для информации с простой структурой достаточно электронной таблицы).

Баз данных было много: на Access-е, на Paradox-е, на FoxPro, на Clipper-е (этот до сих пор вызывает теплые чувства, в отличие от Paradox-а), на Informix что-то, кажется, было.

Моя БД по имеющимся дома и на работе книгам ведется лет 10 и содержит 582 записи о технических и научных изданиях. И за все эти годы у меня так и не дошли руки нормализовать ее: ФИО авторов хранятся в таблице книг в виде текстового поля (база делалась впопыхах), и многие авторы, естественно, многократно дублируются. Это база для поиска (еще она автоматически формирует строку с выходными данными, для вставки в списки литературы)

Часто приходилось создавать базы для хранения исходных данных имитационных моделей: если моделируешь техническую систему, то данных много, а если какой-нибудь образовательный процесс, то структура данных сложна. То есть это были БД для хранения информации.

И, пожалуй, только на этой неделе мне впервые пришлось создать базу для анализа информации, потому что по-другому было просто нельзя. Речь идет о БД научно-исследовательских и опытно-конструкторских работ (НИОКР). Каждая работа может иметь от одного до бесконечности результатов, каждый из которых подлежит бюджетному учету. Кроме того, каждая НИОКР имеет заказчика, исполнителя, связанные с ней номерные документы и объем вложений. Всем этим нужно как-то управлять. Бухгалтерия, в ведении которой находится эта информация, ею никак не управляла - это видно из формата Excel-файла, который они выдали по запросу. Этот файл предназначен для распечатки - работать с ним невозможно (объединенные ячейки, заказчик и исполнитель в одном столбце в чередующихся строках и прочие прелести). Изменить формат, создать структуру БД, автоматом перегнать туда информацию в виде записей, выгружать, сортировать, фильтровать, подсчитывать... все это - прямо-таки какой-то новый вид удовольствия!

Знаю, знаю: мне 34 года, я давно должен был с этим столкнуться, но жизнь иногда имеет странное течение. Зато она может преподносить такие вот неожиданные радости.