Base
Материал из Forumooo wiki
Содержание |
Таблицы
Создание таблицы
Создать таблицу в локальной базе данных можно двумя путями:
- самостоятельно задать имена полей, типы и описания;
- с помощью мастера таблиц, выбрав готовую из предлагаемого набора и затем при необходимости изменив некоторые поля.
Название полей кириллическими символами
Кириллические символы в названиях полей локальной базы данных допустимы. Однако, в будущем вы можете столкнуться с проблемами совместимости.
Обязательно ли назначать ключ (первичный индекс) при создании таблиц?
Да, если планируете редактировать и добавлять данные в таблицу.
Запросы
Выполнение запроса на удаление или обновление данных
В конструкторе запросов при попытке выполнения запроса на удаление или обновление данных появляется сообщение "Эта команда не является запросом типа SELECT. Допустимы только запросы на выборку данных".
Запросы, не возвращающие ответных данных, следует выполнять с помощью команды меню Сервис - SQL.
Примеры несложных запросов
Все примеры запросов приведены для локальной СУБД Base - HSQLDB. При использовании внешних СУБД синтаксис запросов может отличаться.
Простая выборка
SELECT * FROM "table1"
Выборка по условию
SELECT * FROM "table1" WHERE "field1" IS NULL
SELECT * FROM "table1" WHERE "field1"='Первый'
На удаление данных
DELETE FROM "table1" WHERE "field1"='Первый'
На обновление данных
UPDATE "table1" SET "field2"=100 WHERE "field1"='Первый'
Выборка из нескольких таблиц
SELECT "table1"."field2", "table2"."field4" FROM "table1","table2" WHERE "table1"."field1"="table2"."field3"
Выборка из нескольких возможных значений
SELECT * FROM "table1" WHERE "field1" LIKE '%р%'
Выборка с параметром
SELECT * FROM "table1" WHERE "field1"=:x
Группировка данных
SELECT "field_count", SUM("field2") AS "field2" FROM "table1" GROUP BY "field_count"
Совместная работа
Возможна ли совместная работа нескольких пользователей?
В случае использования встроенной базы данных совместная одновременная работа нескольких пользователей невозможна. Если используются внешние базы данных, то возможно каждому пользователю использовать собственную копию формы доступа к данным.
3.3
Разделение данных и форм ввода
Разделение данных и форм по разным файлам не обязательно. Но, тем не менее, данное действие повышает сохранность данных и удобство для оператора (конечного пользователя).
Для этого сохраните форму в отдельный файл Writer.
Подробная инструкция Разнесение данных и форм |
Источники данных
Предназначение источника данных
Источник данных предоставляет доступ к данным из других компонентов LibreOffice/OpenOffice. С его помощью можно обратиться к части данных, например, отдельному запросу, не открывая Base.
Это удобно в случаях,
- когда требуется только часть данных и нет необходимости загружать базу данных целиком,
- или база данных расположена в локальной сети, и ею пользуются несколько человек,
- когда данные расположены на внешних серверах, например, в интернете. Необходимые реквизиты доступа и драйверы подключения уже указаны в Base, и нет необходимости прописывать их заново.
- когда пользователь может иметь права доступа только к части базы данных.
Создание источника
При создании новой базы данных предлагается сразу зарегистрировать её в качестве источника данных.
В дальнейшем можно регистрировать новые источники с помощью Сервис - Параметры - LibreOffice/OpenOffice Base - Базы данных - Создать.
Для регистрации достаточно выбрать нужную доступную базу данных и задать имя источника данных.
Доступ к источнику данных из других компонентов
Однажды зарегистрированный источник данных будет доступен до тех пор, пока вы не удалите его из списка источников, либо пока доступна база данных, на которую ссылается источник.
Доступ к источнику данных можно получить из компонентов Writer и Calc.
Перенос базы данных, зарегистрированной в качестве источника
При переносе БД параметры источника данных автоматически не корректируются. В случае переноса базы данных, например, из одного каталога в другой, необходимо скорректировать расположение БД самостоятельно.
Сделать это можно с помощью меню Сервис - Параметры - LibreOffice/OpenOffice Base - Базы данных. Выберите источник из списка, нажмите Правка.
Копирование и вставка
Копирование и вставка записей в БД
Копирование нескольких записей
Копирование и вставка объектов БД
Выделить все записи
Специальная вставка
Вставка записей из электронной таблицы
Внешние данные
DBF
Электронная таблица
С помощью электронной таблицы удобно вводить первичные данные. А с помощью LibreOffice/OpenOffice Base удобно анализировать большой массив данных, выполнять выборку и готовить отчёты. Неудивительно, что пользователи желают для своей работы использовать оба инструмента. Работа с электронной таблицей в Base возможна по следующим схемам:
- Электронная таблица подключается в качестве внешних данных.
- В электронной таблице выделяется диапазон, копируется, затем вставляется в Base как таблица.
Подключение электронной таблицы в качестве внешних данных
- Создайте новую базу данных, в Мастере баз данных данных укажите пункт Подключиться к существующей базе данных, выберите пункт Эл. таблица, нажмите Далее.
- Укажите расположение файла электронной таблицы, нажмите Далее
- При необходимости зарегистрируйте базу в качестве источника данных.
Определение типов данных полей при подключении электронной таблицы
Тип данных определяется для каждого столбца электронной таблицы автоматически на основе существующих данных. Например, при наличии хотя бы одного текстового значения в столбце тип данных будет определён как текстовый.
Подключение таблицы Microsoft Excel
Порядок подключения таблицы аналогичен, см. #Подключение электронной таблицы в качестве внешних данных.