Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Учебная практика / ooo / ooo_base_simple.odt
Скачиваний:
36
Добавлен:
11.05.2015
Размер:
1.33 Mб
Скачать

Галина Губкина, Татьяна Турченюк, Иван Хахаев

Введение в базы данных OpenOffice.Org

OpenOffice.org – кроссплатформенный офисный пакет, распространяемый по свободной лицензии GPL (GNU Public Licence), поэтому его достаточно выгодно использовать в решении офисных задач. Компонент пакета OpenOffice.org, обеспечивающий работу с базами данных – OpenOffice.org Base (OOo Base) - может работать как с базами собственного формата, так и с базами, созданными для серверов баз данных типа Oracle или MySQL. В этом случае он играет роль оболочки (front-end) для сервера баз данных. Далее будет рассматриваться локальная («персональная») база данных, но технология при работе с серверами баз данных ничем не отличается.

Следует отметить, что базу скопировать на другие носители или каталоги невозможно. Можно сохранить таблицы данных, но связи и запросы не сохранятся. Это гарантирует некоторую безопасность баз данных.

Данный материал описывает работу с модельной базой данных для OpenOffice.org версий 2.x. В процессе создания базы и редактирования данного текста использовались различные сборки и версии пакета (что можно видеть по копиям окон), онако это не влияет на совместимость и функциональность. В первом поколении пакета (версии 1.x) компонента для работы с базами данных не было, однако база могла использоваться как источник данных (см. п. 4). Для успешной работы, генерации форм и отчетов необходимо использовать виртуальную машину Java (JRE). Она может бать включена в состав сборки OpenOffice.org, в состав дистрибутива Linux или xBSD, а также может быть получена другими путями, поскольку сборки JRE являются бесплатными (free sofware).

  1. Состав базы и типы данных

В состав базы данных OOo Base обычно входят четыре вида документов (объектов)

  • Таблицыслужат для хранения данных в определенной структуре.

  • Запросысоздаются для выборки данных из одной или нескольких связанных таблиц.

  • Формыпредназначены для ввода, редактирования и просмотра табличных данных на экране в удобном виде.

  • Отчетыявляются выходными документами, предназначенными для вывода на принтер.

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

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

Указание типа поля требуется во-первых, для его правильной обработки (с текстом нельзя делать такие же операции как с числами, а с датами нельзя работать как с логическими величинами), а во-вторых, для эффективного распределения памяти. В таблицах OOo Base используются следующие типы полей (комментарии даны на основе опыта и аналогий с другими базами данных):

  1. Tiny Integer [TYNYINT] – используется чаще всего для нумерации при небольшом количестве позиций. Длина, по-видимому, определяет количество битов для записи целого числа (Tynyint(3) дает 8 вариантов (3 бита))

  2. Длинное целое [BIGINT] – разрядность вдвое больше принятой в системе. В 32-разрядной системе для такого целого выделяется 64 бита.

  3. Картинка [LONGVARBINARY] – двоичный объект (BLOB в классическом понимании) размера в десятки и сотни Кбайт.

  4. Двоичное [VARBINARY] – var дает возможность экономии памяти если в разных записях это поле реально имеет разный размер.

  5. Двоичное (фикс.) [BINARY]

  6. Памятка [LONGVARCHAR] – большой текст (до 64 Кбайт) (оно же MEMO)

  7. Текст (фикс.) [CHAR] – строка с жестко заданным количеством символов. Экономии памяти не происходит.

  8. Число [NUMERIC] – видимо, натуральное число.

  9. Десятичное [DECIMAL]

  10. Целое [INTEGER] – 1 бит на знак, 31 – на значение целого числа.

  11. Короткое целое [SMALLINT] – вдвое меньшая разрядность (16 битов)

  12. С плавающей точкой [FLOAT] – не очень понятно, чем отличается от DECIMAL

  13. Вещественное [REAL] – по-видимому. классическое вещественное – представляемое как 32-разрядные мантисса и порядок

  14. С двойной точностью [DOUBLE] – аналогично REAL, но разрядность удваивается

  15. Текст [VARCHAR] – строка до 256 знаков с экономией памяти на более коротких экземплярах.

  16. Текст [VARCHAR_IGNORECASE] – не различаются строчные и прописные буквы

  17. Логическое [BOOLEAN]

  18. Дата [DATE]

  19. Время [TIME]

  20. Дата/время [TIMESTAMP] – так называемый “UNIX timestamp” – число миллисекунд, прошедших с начала “эры UNIX”

  21. OTHER [OTHER]

Соседние файлы в папке ooo