Создание базы данных в LibreOffice Base

База данных — удобное и функциональное хранилище информации, позволяющее осуществлять самую разноплановую работу с данными. Сегодня мы рассмотрим алгоритм создания небольшой базы данных в СУБД LibreOffice Base.

При запуске LibreOffice Base автоматически открывается Мастер баз данных, предлагающий создать новую БД, либо открыть существующую. Выберем пункт Создать новую базу данных и нажмем на кнопку Далее:

Создание базы данных LibreOffice Base

На втором этапе Мастер предлагает два варианта: открыть базу данных для редактирования или сразу приступить к созданию таблиц. Оставим настройки по умолчанию и нажмём кнопку Готово:

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

Названия для документов лучше выбирать осмысленные и отражающее содержание хранящейся в ней информации — такие документы сложнее потерять в общей массе и не придётся каждый раз мучительно вспоминать, в каком из них какая информация хранится.

В качестве примера мы создадим базу данных клиентов какого-то абстрактного магазина. Поэтому назовём её «База данных клиентов»:

Базы данных в LibreOffice Base сохраняются в формате .odb

После того как создан новый файл базы данных, редактор откроет основное рабочее окно СУБД. Здесь можно работать с таблицами, запросами, формами и отчётами. Создавать, редактировать и управлять ими. Каждую из этих форм можно создавать в двух режимах — с помощью мастера (для начинающих) или в режиме дизайна (для опытных пользователей).
Для начала создадим таблицы. Чтобы воспользоваться помощью мастера таблиц, щёлкнем на кнопке Таблицы в окне База данных, а в окне Задачи выберем Использовать мастер для создания таблицы…:

Мастер создания таблиц предлагает множество готовых шаблонов таблиц и полей в них. Остается только выбрать подходящие из нужной сферы или создать требуемую таблицу самим.
Создание таблицы с помощью шаблонов начинается с определения ее категории с помощью переключателей Деловые/Персональные. В данном контексте нам нужна категория Деловые. В списке Примеры таблиц выбираем название наиболее подходящего образца — в нашем случае это таблица Клиенты.
После щелчка по названию выбранного образца формируется содержимое списка Доступные поля. Нам нужно просмотреть этот список и отобрать те, которые необходимы в таблице. Чтобы поле попало в структуру формируемой таблицы, его нужно выделить, а затем щелкнуть по кнопке >. Для нашей таблицы выберем следующие поля:

При желании любое поле, включенное в список выбранных полей, можно переименовать. Это можно сделать в окне следующего шага. Мы переименуем поле КодКлиента в более понятное НомерДисконтнойКарты, а также изменим следующие параметры: поля НомерДисконтнойКарты, Имя, Фамилия и НомерМобильногоТелефона сделаем обязательными для заполнения:

На третьем шаге происходит задание первичного ключа. Если объяснять просто, то первичный ключ — это то поле, по которому мы можем однозначно идентифицировать каждую запись в таблице. А значит, значения первичных ключей в таблице никогда не повторяются. В нашем случае первичным ключом целесообразно сделать поле НомерДисконтнойКарты, так как эти номера, как правило, уникальны в рамках одного магазина/сети:

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

В последнем окне Мастер предлагает подправить название таблицы (если нужно) и три варианта дальнейших действий с ней: Немедленно вставить данные, Модифицировать дизайн таблицы, Создать форму на основе данной таблицы. Выберем Немедленно вставить данные и щёлкнем по кнопке Готово:

В качестве примера введём несколько строчек в нашу новоиспеченную таблицу:

Далее рассмотрим создание новой таблицы в режиме дизайна. Чтобы создать новую таблицу в режиме дизайна, выберем в окне Задачи пункт Создание таблицы в режиме дизайна.
В открывшейся таблице можно задать поля будущей таблицы. Создадим таблицу Дисконтные карты. В ней будут следующие поля: номер карты, размер предоставляемой скидки и количество баллов на счёте. Введем новые поля в строки сверху вниз: щелкаем ячейку Имя поля и вводим имя для каждого поля данных.
В следующей ячейке справа определяем Тип поля: щелкнув в этой ячейке, выбираем тип поля из списка.
Для каждого поля можно также ввести Описание. Текст описания будет возникать в виде всплывающей подсказки при наведении курсора на заголовок в представлении таблицы. Для примера сделаем пояснение, что скидка должна вводиться не в %, а в долях от 1:

Ниже таблицы полей вводятся Свойства поля для каждого выбранного поля данных.
Поле Автозначение позволяет автоматически нумеровать записи по возрастанию. В данном случае удобно автоматически получать номер дисконтной карты — для этого поля этот параметр установим в положение Да.
Поля Длина и Знаков после запятой изменяем в зависимости от того, какими будут вводимые данные: скидка у нас может быть до десятых долей процента, поэтому число знаков после запятой — 3.
В поле Значение по умолчанию вводим значения, которые будут подставляться в запись автоматически. Само собой, что в дальнейшем содержимое этого поля можно будет при необходимости изменить. Для нашей таблицы по умолчанию можно заполнять поля РазмерСкидки — скажем, вначале он для всех составляет 5%, а КоличествоБаллов при получении дисконтной карты как правило равно 0.
В поле Обязательное укажем, может ли поле оставаться пустым. В нашем случае специфика таблицы такова, что все поля должны быть заполнены, поэтому для всех установим Да.
Чтобы выбрать поле, которое станет первичным ключом таблицы, нужно правой кнопкой мыши нажать на серый квадрат слева от строки с нужным полем и установить галочку Первичный ключ.

В зависимости от типа базы данных или типа поля некоторые свойства полей могут быть недоступны.

Остаётся только сохранить таблицу — при этом нужно будет ввести её название. Назовём таблицу Дисконтные карты и сохранимся.

Также заполним таблицу Дисконтные карты данными:

В рамках данного занятия также рассмотрим создание связей между таблицами. Они будут необходимы нам для дальнейшей работы с БД — например, для создания запросов, использующих данные двух или более таблиц. Чтобы создать связь, в основном окне программы выберем пункт меню Сервис->Связи.

Создавать или изменять связи между открытыми таблицами нельзя! Поэтому вначале необходимо закрыть все ранее открытые таблицы базы данных и открыть окно базы данных.

В открывшемся окне нужно сначала добавить таблицы (кнопка Добавить таблицы на панели инструментов, либо аналогичный пункт в меню Вставить) — в окне со списком таблиц выбираем нужную и нажимаем кнопку Добавить.
Затем между таблицами создаётся связь (также кнопка или пункт меню Создать связь):

В окне Связи выбираем таблицы, между которыми она создаётся (их может быть не больше 2, слева указывается таблица, которая будет главной), поля, с помощью которых она будет осуществляться — в нашем случае это поле НомерДисконтнойКарты, и отношения между таблицами в разных ситуациях. Так при обновлении номера карты в таблице дисконтных карт целесообразно обновлять этот номер и для клиента, держащего карту, а при удалении — обнулять её значение, чтобы не потерять данные клиента и видеть, что карты у него нет:
После нажатия кнопки ОК между таблицами будет создана связь:

Обозначение «1-1» указывает, что данная связь имеет тип «один-к-одному» и означает, что у одного клиента может и должна быть только одна дисконтная карта.

В данной статье мы постарались рассмотреть основные приёмы, необходимые для создания простой базы данных в LibreOffice Base. Однако, если у вас остались вопросы по данной теме, вы можете задать их в комментариях или на нашем форуме. Мы постараемся оперативно на них ответить 🙂

35 комментариев

  1. От инна

    Ответить

  • От Ageo

    Ответить

    • От Катерина

      Ответить

  • От Олег

    Ответить

    • От tt

      Ответить

  • Ответить

    • От Катерина

      Ответить

  • От александр

    Ответить

    • От Катерина

      Ответить

  • От александр

    Ответить

  • От Santas

    Ответить

    • От Катерина

      Ответить

  • От santas

    Ответить

  • От Santas

    Ответить

    • От Катерина

      Ответить

  • От santas

    Ответить

  • От Ольга

    Ответить

    • От Катерина

      Ответить

  • От Ольга

    Ответить

    • От Катерина

      Ответить

  • От Борис

    Ответить

  • От Евгений

    Ответить

  • От евгений

    Ответить

  • От евгений

    Ответить

  • От Людмила

    Ответить

    • От Евгений

      Ответить

    • От Сргей

      Ответить

  • От Евгений

    Ответить

  • От Андрей

    Ответить

  • От Андрей

    Ответить

  • Ответить

  • От Vadym

    Ответить

  • Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *