Base: Часто задаваемые вопросы

Материал из Forumooo wiki

(Различия между версиями)
Перейти к: навигация, поиск
(Создание таблицы)
(MySQL)
 
(48 промежуточных версий не показаны.)
Строка 1: Строка 1:
-
==Таблицы==
+
{{DISPLAYTITLE: Base: Часто задаваемые вопросы}}
 +
 
 +
==[[Image:Base.png]] Таблицы==
 +
 
===Создание таблицы===
===Создание таблицы===
Создать таблицу в локальной базе данных можно двумя путями:
Создать таблицу в локальной базе данных можно двумя путями:
* самостоятельно задать имена полей, типы и описания;
* самостоятельно задать имена полей, типы и описания;
-
* с помощью мастера таблиц, выбрав готовую из предлагаемого набора и затем при необходимости изменить некоторые поля.
+
* с помощью мастера таблиц, выбрав готовую из предлагаемого набора и затем при необходимости изменив некоторые поля.
===Название полей кириллическими символами===
===Название полей кириллическими символами===
Строка 11: Строка 14:
Да, если планируете редактировать и добавлять данные в таблицу.
Да, если планируете редактировать и добавлять данные в таблицу.
-
==Запросы==
+
===Что такое индексы?===
 +
см. [[Glossary#Индекс базы данных]]
 +
 
 +
==[[Image:Base.png]] Запросы==
 +
 
===Выполнение запроса на удаление или обновление данных===
===Выполнение запроса на удаление или обновление данных===
В конструкторе запросов при попытке выполнения запроса на удаление или обновление данных появляется сообщение "Эта команда не является запросом типа SELECT. Допустимы только запросы на выборку данных".
В конструкторе запросов при попытке выполнения запроса на удаление или обновление данных появляется сообщение "Эта команда не является запросом типа SELECT. Допустимы только запросы на выборку данных".
Строка 17: Строка 24:
Запросы, не возвращающие ответных данных, следует выполнять с помощью команды меню '''Сервис - SQL'''.
Запросы, не возвращающие ответных данных, следует выполнять с помощью команды меню '''Сервис - SQL'''.
-
==Примеры запросов==
+
==[[Image:Base.png]] Примеры несложных запросов==
 +
Все примеры запросов приведены для локальной СУБД Base - [[Glossary#HSQLDB|HSQLDB]]. При использовании внешних СУБД синтаксис запросов может отличаться.
===Простая выборка===
===Простая выборка===
<source lang="sql">
<source lang="sql">
-
SELECT * FROM table1
+
SELECT * FROM "table1"
</source>
</source>
 +
===Выборка по условию===
===Выборка по условию===
<source lang="sql">
<source lang="sql">
Строка 60: Строка 69:
</source>
</source>
-
==Совместная работа==
+
==[[Image:Base.png]] Совместная работа==
 +
 
===Возможна ли совместная работа нескольких пользователей?===
===Возможна ли совместная работа нескольких пользователей?===
В случае использования встроенной базы данных совместная одновременная работа нескольких пользователей невозможна. Если используются внешние базы данных, то возможно каждому пользователю использовать собственную копию формы доступа к данным.
В случае использования встроенной базы данных совместная одновременная работа нескольких пользователей невозможна. Если используются внешние базы данных, то возможно каждому пользователю использовать собственную копию формы доступа к данным.
Строка 72: Строка 82:
{{Tip|Подробная инструкция [http://myooo.ru/content/view/101/64/ Разнесение данных и форм]}}
{{Tip|Подробная инструкция [http://myooo.ru/content/view/101/64/ Разнесение данных и форм]}}
-
==Источники данных==
+
==[[Image:Base.png]] Источники данных==
===Предназначение источника данных===
===Предназначение источника данных===
 +
Источник данных предоставляет доступ к данным из других компонентов {{Office}}. С его помощью можно обратиться к части данных, например, отдельному запросу, не открывая Base.
 +
 +
Это удобно в случаях,
 +
* когда требуется только часть данных и нет необходимости загружать базу данных целиком,
 +
* или база данных расположена в локальной сети, и ею пользуются несколько человек,
 +
* когда данные расположены на внешних серверах, например, в интернете. Необходимые реквизиты доступа и драйверы подключения уже указаны в Base, и нет необходимости прописывать их заново.
 +
* когда пользователь может иметь права доступа только к части базы данных.
===Создание источника===
===Создание источника===
 +
При создании новой базы данных предлагается сразу зарегистрировать её в качестве источника данных.
 +
 +
В дальнейшем можно регистрировать новые источники с помощью '''Сервис - Параметры - {{Office}} Base - Базы данных - Создать'''.
 +
 +
Для регистрации достаточно выбрать нужную доступную базу данных и задать имя источника данных.
===Доступ к источнику данных из других компонентов===
===Доступ к источнику данных из других компонентов===
 +
Однажды зарегистрированный источник данных будет доступен до тех пор, пока вы не удалите его из списка источников, либо пока доступна база данных, на которую ссылается источник.
 +
 +
Доступ к источнику данных можно получить из компонентов Writer и Calc.
 +
 +
===Перенос базы данных, зарегистрированной в качестве источника===
 +
При переносе БД параметры источника данных автоматически не корректируются.
 +
В случае переноса базы данных, например, из одного каталога в другой, необходимо скорректировать расположение БД самостоятельно.
 +
 +
Сделать это можно с помощью меню '''Сервис - Параметры - {{Office}} Base - Базы данных'''. Выберите источник из списка, нажмите '''Правка'''.
 +
 +
==[[Image:Base.png]] Копирование и вставка==
 +
 +
===Копирование и вставка записей в БД===
 +
===Копирование нескольких записей===
 +
Выполняется аналогично копированию в электронных таблицах.
 +
Перед копированием необходимо выделить записи, пометив их в столбце-заголовке строк.
 +
Выделенные записи можно перетащить мышью в требуемую таблицу для вставки (в том числе и на лист Calc).
 +
 +
===Копирование и вставка объектов БД===
 +
Производится привычным способом, в основном окне Base. Видимые объекты базы данных (таблицы, формы, запросы или отчёты) копируются и вставляются с помощью правой кнопки мыши или соответствующих сочетаний клавиш ('''Ctrl+C''', '''Ctrl+V''').
 +
 +
===Выделить все записи===
 +
Можно щелчком мыши по самой первой ячейке в заголовке таблицы.
 +
 +
Далее, можно скопировать все данные таблицы в электронную таблицу Calc просто перетащив мышью (удерживая левую кнопку)
 +
в требуемое место листа электронной таблицы.
 +
 +
===Специальная вставка===
 +
===Вставка записей из электронной таблицы===
 +
Сначала необходимо выделить и скопировать необходимый диапазон в Calc или [[Glossary#Microsoft_Excel|Excel]]. Затем перейти в основное окно Base, группу '''Таблицы''' и вставить диапазон с помощью правой кнопки мыши.
 +
 +
Откроется диалог вставки данных, где можно задать порядок следования и определить типы вставляемых данных. Если при этом какая-нибудь из таблиц была выделена, то будет предложено добавить данные.
 +
 +
==[[Image:Base.png]] Внешние данные==
 +
 +
{{Office}} Base позволяет подключаться к другим базам данных, адресным книгам, электронным таблицам и даже текстовым файлам. Доступные для подключения источники можно найти в раскрывающемся списке, если выбрать в [[Glossary#Мастер баз данных|Мастере баз данных]] пункт '''Подключиться к существующей базе данных'''.
 +
Для подключения других баз данных, возможно потребуются дополнительные [[Glossary#Драйвер|драйверы]] или предварительно созданные источники данных ODBC.
 +
 +
===Дополнительная информация о драйверах баз данных===
 +
'''MySQL'''
 +
* http://wiki.services.openoffice.org/wiki/Connect_MySQL_and_Base
 +
* http://aoo-extensions.sourceforge.net/project/mysql_connector
 +
* [[JdbcSetup| Настройка драйвера JDBC-MySQL]]
 +
'''PostgreSQL'''
 +
* http://wiki.services.openoffice.org/wiki/Base/connectivity/PostgreSQL
 +
'''SQLite'''
 +
* http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Using_SQLite_With_OpenOffice.org
 +
* http://dba.openoffice.org/drivers/sqlite/index.html
-
==Внешние данные==
 
===DBF===
===DBF===
 +
Подключение таблиц DBF производится общим способом, описанным в начале раздела: в списке '''Подключиться к существующей базе данных''' выберите пункт dBase, а затем укажите каталог с файлами DBF.
 +
{{Tip|Указывать конкретные файлы DBF не требуется, достаточно указать только каталог}}
 +
 +
====Подключение нескольких таблиц DBF одновременно====
 +
Для подключения нескольких таблиц сложите их в один каталог, а затем подключите.
 +
===Электронная таблица===
===Электронная таблица===
 +
С помощью электронной таблицы удобно вводить первичные данные. А с помощью {{Office}} Base удобно анализировать большой массив данных, выполнять выборку и готовить отчёты. Неудивительно, что пользователи желают для своей работы использовать оба инструмента.
 +
Работа с электронной таблицей в Base возможна по следующим схемам:
 +
# Электронная таблица подключается в качестве внешних данных.
 +
# В электронной таблице выделяется диапазон, копируется, затем [[#Вставка записей из электронной таблицы|вставляется в Base как таблица]].
 +
====Подключение электронной таблицы в качестве внешних данных====
 +
* Создайте новую базу данных, в [[Glossary#Мастер баз данных|Мастере баз данных]] укажите пункт '''Подключиться к существующей базе данных''', выберите пункт '''Эл. таблица''', нажмите '''Далее'''.
 +
* Укажите расположение файла электронной таблицы, нажмите Далее
 +
* При необходимости зарегистрируйте базу в качестве источника данных.
 +
 +
====Определение типов данных полей при подключении электронной таблицы====
 +
Тип данных определяется для каждого столбца электронной таблицы автоматически на основе существующих данных. Например, при наличии хотя бы одного текстового значения в столбце тип данных будет определён как текстовый.
 +
 +
====Подключение таблицы Microsoft Excel====
 +
Порядок подключения таблицы аналогичен, см. [[#Подключение электронной таблицы в качестве внешних данных]].
 +
===MS Access===
===MS Access===
 +
{{Warning|Изложенный в данном разделе текст справедлив только для ОС Windows}}
 +
Работа с базами данных [[Glossary#Microsoft Access|Microsoft Access]] в Base возможна только в режиме просмотра и в ОС Windows. Подключив базу MDB в качестве внешнего источника можно просматривать данные и свойства таблиц. Изменять (сохранять изменения) нельзя.
 +
 +
====Подключение базы MS Access====
 +
Откройте Base, выберите '''Подключение к существующей базе данных''', Выберите из списка '''Microsoft Access''', укажите файл с базой данных, '''Готово'''.
 +
 +
====Подключение базы MS Access с паролем====
 +
Если доступ к базе данных MS Access защищён паролем, то лучше предварительно создать системный или пользовательский источник данных ODBC с помощью '''Панели управления''', '''Администрирование - Источники ODBC''', выбрать из списка доступных драйверов MS Access Driver, при настройке указать пароль для доступа к базе.
 +
 +
Затем в Base выбрать '''Подключение к существующей базе данных''', выбрать из списка пункт '''ODBC''', После нажатия '''Далее''' появляется окно "Настройка соединения через ODBC". При нажатии '''Просмотр''' появляется список доступных источников - выбрать свой.
 +
 +
===MySQL===
 +
Подключить MySQL можно с помощью ODBC, [[JdbcSetup| JDBC]] или используя расширение [http://aoo-extensions.sourceforge.net/ru/project/mysql_connector MySQL Connector for OpenOffice.org]
 +
 +
==[[Image:Base.png]] Формы==
 +
 +
Форма - специальный объект Base, позволяющий редактировать и добавлять данные в таблицах в удобной для пользователя форме. Формы могут быть главными и подчинёнными.
-
==Формы==
 
===Создание форм===
===Создание форм===
 +
Создать форму можно вручную, с помощью конструктора, или используя [[Glossary#Мастер создания форм|Мастер создания форм]]. Если форма создаётся впервые, используйте [[Glossary#Мастер создания форм|Мастер]].
 +
===Подчинённая форма===
===Подчинённая форма===
 +
Подчинённой формой называют форму, помещённую в другую форму. Главная и подчинённая форма чаще всего связаны определёнными полями, таким образом на основании данных в одном поле, находящемся в главной форме, меняются данные в полях подчинённой формы.
 +
 +
Примером применения подчинённой формы может быть представление данных по оценкам студента университета. Персональные данные студентов и их оценки содержатся в разных таблицах. Таблицы связаны между собой ключевым полем, например, идентификатором-счётчиком (ID). Главная форма будет содержать персональные данные студента; подчинённая - его оценки.
 +
 +
Создавать подчинённые формы удобнее всего с помощью Мастера форм, сразу при создании главной формы.
 +
===Вкладки в формах===
===Вкладки в формах===
 +
Элемент управления Вкладки в {{Office}} пока не реализован.
 +
 +
==[[Image:Base.png]] Отчёты==
 +
Отчёт - это форма представления данных из баз данных, предназначенная для просмотра и распечатки на принтере. Данные, представленные в отчёте, нельзя редактировать.
 +
 +
===Создание отчёта произвольной формы===
 +
Для создания отчётов произвольной формы установите и используйте расширение [[Base/Oracle Report Builder | Oracle Report Builder]] http://aoo-extensions.sourceforge.net/en/project/reportdesign
 +
 +
----
 +
 +
==[[Image:Base.png]] Полезные ссылки==
 +
* [[#Дополнительная информация о драйверах баз данных]]
 +
* [http://ru.wikipedia.org/wiki/SQL SQL]
 +
* [http://wiki.linuxformat.ru/index.php/LXF84:OpenOffice.org_Base Статья из LinuxFormat о создании БД в Base]
 +
* [http://wiki.linuxformat.ru/index.php/LXF85:OpenOffice.org_Base Статья из LinuxFormat о создании БД в Base часть 2]
 +
* [http://myooo.ru/content/blogcategory/20/64/ Документация по созданию и использованию Base на MyOOo.ru]
 +
* [http://www.mysql.ru/docs/ Документация по MySQL]
 +
* [http://www.mysql.com/ Официальный сайт MySQL]
 +
* [http://www.postgresql.org/ Официальный сайт PostgreSQL]
 +
* [http://hsqldb.org/ Официальный сайт HSQLDB]
 +
* [http://extensions.libreoffice.org/extension-center?getCategories=Base_Extension&getCompatibility=any Расширения для LibreOffice Base]
 +
-
==Отчёты==
+
[[Category:Base]]
-
==Полезные ссылки==
+

Текущая версия на 16:09, 22 мая 2013


Содержание

Base.png Таблицы

Создание таблицы

Создать таблицу в локальной базе данных можно двумя путями:

Название полей кириллическими символами

Кириллические символы в названиях полей локальной базы данных допустимы. Однако, в будущем вы можете столкнуться с проблемами совместимости.

Обязательно ли назначать ключ (первичный индекс) при создании таблиц?

Да, если планируете редактировать и добавлять данные в таблицу.

Что такое индексы?

см. Glossary#Индекс базы данных

Base.png Запросы

Выполнение запроса на удаление или обновление данных

В конструкторе запросов при попытке выполнения запроса на удаление или обновление данных появляется сообщение "Эта команда не является запросом типа SELECT. Допустимы только запросы на выборку данных".

Запросы, не возвращающие ответных данных, следует выполнять с помощью команды меню Сервис - SQL.

Base.png Примеры несложных запросов

Все примеры запросов приведены для локальной СУБД 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"

Base.png Совместная работа

Возможна ли совместная работа нескольких пользователей?

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

3.3

Разделение данных и форм ввода

Разделение данных и форм по разным файлам не обязательно. Но, тем не менее, данное действие повышает сохранность данных и удобство для оператора (конечного пользователя).

Для этого сохраните форму в отдельный файл Writer.

Tip.pngПодробная инструкция Разнесение данных и форм

Base.png Источники данных

Предназначение источника данных

Источник данных предоставляет доступ к данным из других компонентов LibreOffice/OpenOffice. С его помощью можно обратиться к части данных, например, отдельному запросу, не открывая Base.

Это удобно в случаях,

Создание источника

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

В дальнейшем можно регистрировать новые источники с помощью Сервис - Параметры - LibreOffice/OpenOffice Base - Базы данных - Создать.

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

Доступ к источнику данных из других компонентов

Однажды зарегистрированный источник данных будет доступен до тех пор, пока вы не удалите его из списка источников, либо пока доступна база данных, на которую ссылается источник.

Доступ к источнику данных можно получить из компонентов Writer и Calc.

Перенос базы данных, зарегистрированной в качестве источника

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

Сделать это можно с помощью меню Сервис - Параметры - LibreOffice/OpenOffice Base - Базы данных. Выберите источник из списка, нажмите Правка.

Base.png Копирование и вставка

Копирование и вставка записей в БД

Копирование нескольких записей

Выполняется аналогично копированию в электронных таблицах. Перед копированием необходимо выделить записи, пометив их в столбце-заголовке строк. Выделенные записи можно перетащить мышью в требуемую таблицу для вставки (в том числе и на лист Calc).

Копирование и вставка объектов БД

Производится привычным способом, в основном окне Base. Видимые объекты базы данных (таблицы, формы, запросы или отчёты) копируются и вставляются с помощью правой кнопки мыши или соответствующих сочетаний клавиш (Ctrl+C, Ctrl+V).

Выделить все записи

Можно щелчком мыши по самой первой ячейке в заголовке таблицы.

Далее, можно скопировать все данные таблицы в электронную таблицу Calc просто перетащив мышью (удерживая левую кнопку) в требуемое место листа электронной таблицы.

Специальная вставка

Вставка записей из электронной таблицы

Сначала необходимо выделить и скопировать необходимый диапазон в Calc или Excel. Затем перейти в основное окно Base, группу Таблицы и вставить диапазон с помощью правой кнопки мыши.

Откроется диалог вставки данных, где можно задать порядок следования и определить типы вставляемых данных. Если при этом какая-нибудь из таблиц была выделена, то будет предложено добавить данные.

Base.png Внешние данные

LibreOffice/OpenOffice Base позволяет подключаться к другим базам данных, адресным книгам, электронным таблицам и даже текстовым файлам. Доступные для подключения источники можно найти в раскрывающемся списке, если выбрать в Мастере баз данных пункт Подключиться к существующей базе данных. Для подключения других баз данных, возможно потребуются дополнительные драйверы или предварительно созданные источники данных ODBC.

Дополнительная информация о драйверах баз данных

MySQL

PostgreSQL

SQLite

DBF

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

Tip.pngУказывать конкретные файлы DBF не требуется, достаточно указать только каталог

Подключение нескольких таблиц DBF одновременно

Для подключения нескольких таблиц сложите их в один каталог, а затем подключите.

Электронная таблица

С помощью электронной таблицы удобно вводить первичные данные. А с помощью LibreOffice/OpenOffice Base удобно анализировать большой массив данных, выполнять выборку и готовить отчёты. Неудивительно, что пользователи желают для своей работы использовать оба инструмента. Работа с электронной таблицей в Base возможна по следующим схемам:

  1. Электронная таблица подключается в качестве внешних данных.
  2. В электронной таблице выделяется диапазон, копируется, затем вставляется в Base как таблица.

Подключение электронной таблицы в качестве внешних данных

Определение типов данных полей при подключении электронной таблицы

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

Подключение таблицы Microsoft Excel

Порядок подключения таблицы аналогичен, см. #Подключение электронной таблицы в качестве внешних данных.

MS Access

Warning.pngИзложенный в данном разделе текст справедлив только для ОС Windows

Работа с базами данных Microsoft Access в Base возможна только в режиме просмотра и в ОС Windows. Подключив базу MDB в качестве внешнего источника можно просматривать данные и свойства таблиц. Изменять (сохранять изменения) нельзя.

Подключение базы MS Access

Откройте Base, выберите Подключение к существующей базе данных, Выберите из списка Microsoft Access, укажите файл с базой данных, Готово.

Подключение базы MS Access с паролем

Если доступ к базе данных MS Access защищён паролем, то лучше предварительно создать системный или пользовательский источник данных ODBC с помощью Панели управления, Администрирование - Источники ODBC, выбрать из списка доступных драйверов MS Access Driver, при настройке указать пароль для доступа к базе.

Затем в Base выбрать Подключение к существующей базе данных, выбрать из списка пункт ODBC, После нажатия Далее появляется окно "Настройка соединения через ODBC". При нажатии Просмотр появляется список доступных источников - выбрать свой.

MySQL

Подключить MySQL можно с помощью ODBC, JDBC или используя расширение MySQL Connector for OpenOffice.org

Base.png Формы

Форма - специальный объект Base, позволяющий редактировать и добавлять данные в таблицах в удобной для пользователя форме. Формы могут быть главными и подчинёнными.

Создание форм

Создать форму можно вручную, с помощью конструктора, или используя Мастер создания форм. Если форма создаётся впервые, используйте Мастер.

Подчинённая форма

Подчинённой формой называют форму, помещённую в другую форму. Главная и подчинённая форма чаще всего связаны определёнными полями, таким образом на основании данных в одном поле, находящемся в главной форме, меняются данные в полях подчинённой формы.

Примером применения подчинённой формы может быть представление данных по оценкам студента университета. Персональные данные студентов и их оценки содержатся в разных таблицах. Таблицы связаны между собой ключевым полем, например, идентификатором-счётчиком (ID). Главная форма будет содержать персональные данные студента; подчинённая - его оценки.

Создавать подчинённые формы удобнее всего с помощью Мастера форм, сразу при создании главной формы.

Вкладки в формах

Элемент управления Вкладки в LibreOffice/OpenOffice пока не реализован.

Base.png Отчёты

Отчёт - это форма представления данных из баз данных, предназначенная для просмотра и распечатки на принтере. Данные, представленные в отчёте, нельзя редактировать.

Создание отчёта произвольной формы

Для создания отчётов произвольной формы установите и используйте расширение Oracle Report Builder http://aoo-extensions.sourceforge.net/en/project/reportdesign


Base.png Полезные ссылки

Источник — «https://wiki.forumooo.ru:80/wiki/Base»
Личные инструменты
Пространства имён
Варианты
Действия
Компоненты
Общие вопросы
Совместимость
Навигация
Инструменты