Base: Часто задаваемые вопросы
Материал из Forumooo wiki
Helen (Обсуждение | вклад) (→Формы) |
Yakov (Обсуждение | вклад) (→MySQL) |
||
(15 промежуточных версий не показаны.) | |||
Строка 1: | Строка 1: | ||
- | ==Таблицы== | + | {{DISPLAYTITLE: Base: Часто задаваемые вопросы}} |
+ | |||
+ | ==[[Image:Base.png]] Таблицы== | ||
+ | |||
===Создание таблицы=== | ===Создание таблицы=== | ||
Создать таблицу в локальной базе данных можно двумя путями: | Создать таблицу в локальной базе данных можно двумя путями: | ||
Строка 14: | Строка 17: | ||
см. [[Glossary#Индекс базы данных]] | см. [[Glossary#Индекс базы данных]] | ||
- | ==Запросы== | + | ==[[Image:Base.png]] Запросы== |
+ | |||
===Выполнение запроса на удаление или обновление данных=== | ===Выполнение запроса на удаление или обновление данных=== | ||
В конструкторе запросов при попытке выполнения запроса на удаление или обновление данных появляется сообщение "Эта команда не является запросом типа SELECT. Допустимы только запросы на выборку данных". | В конструкторе запросов при попытке выполнения запроса на удаление или обновление данных появляется сообщение "Эта команда не является запросом типа SELECT. Допустимы только запросы на выборку данных". | ||
Строка 20: | Строка 24: | ||
Запросы, не возвращающие ответных данных, следует выполнять с помощью команды меню '''Сервис - SQL'''. | Запросы, не возвращающие ответных данных, следует выполнять с помощью команды меню '''Сервис - SQL'''. | ||
- | ==Примеры несложных запросов== | + | ==[[Image:Base.png]] Примеры несложных запросов== |
Все примеры запросов приведены для локальной СУБД Base - [[Glossary#HSQLDB|HSQLDB]]. При использовании внешних СУБД синтаксис запросов может отличаться. | Все примеры запросов приведены для локальной СУБД Base - [[Glossary#HSQLDB|HSQLDB]]. При использовании внешних СУБД синтаксис запросов может отличаться. | ||
===Простая выборка=== | ===Простая выборка=== | ||
Строка 65: | Строка 69: | ||
</source> | </source> | ||
- | ==Совместная работа== | + | ==[[Image:Base.png]] Совместная работа== |
+ | |||
===Возможна ли совместная работа нескольких пользователей?=== | ===Возможна ли совместная работа нескольких пользователей?=== | ||
В случае использования встроенной базы данных совместная одновременная работа нескольких пользователей невозможна. Если используются внешние базы данных, то возможно каждому пользователю использовать собственную копию формы доступа к данным. | В случае использования встроенной базы данных совместная одновременная работа нескольких пользователей невозможна. Если используются внешние базы данных, то возможно каждому пользователю использовать собственную копию формы доступа к данным. | ||
Строка 77: | Строка 82: | ||
{{Tip|Подробная инструкция [http://myooo.ru/content/view/101/64/ Разнесение данных и форм]}} | {{Tip|Подробная инструкция [http://myooo.ru/content/view/101/64/ Разнесение данных и форм]}} | ||
- | ==Источники данных== | + | ==[[Image:Base.png]] Источники данных== |
===Предназначение источника данных=== | ===Предназначение источника данных=== | ||
Строка 106: | Строка 111: | ||
Сделать это можно с помощью меню '''Сервис - Параметры - {{Office}} Base - Базы данных'''. Выберите источник из списка, нажмите '''Правка'''. | Сделать это можно с помощью меню '''Сервис - Параметры - {{Office}} Base - Базы данных'''. Выберите источник из списка, нажмите '''Правка'''. | ||
- | ==Копирование и вставка== | + | ==[[Image:Base.png]] Копирование и вставка== |
+ | |||
===Копирование и вставка записей в БД=== | ===Копирование и вставка записей в БД=== | ||
===Копирование нескольких записей=== | ===Копирование нескольких записей=== | ||
+ | Выполняется аналогично копированию в электронных таблицах. | ||
+ | Перед копированием необходимо выделить записи, пометив их в столбце-заголовке строк. | ||
+ | Выделенные записи можно перетащить мышью в требуемую таблицу для вставки (в том числе и на лист Calc). | ||
+ | |||
===Копирование и вставка объектов БД=== | ===Копирование и вставка объектов БД=== | ||
- | Производится привычным способом, в основном окне Base. Видимые объекты базы данных (таблицы, формы, запросы или отчёты) копируются и вставляются с помощью правой кнопки мыши или соответствующих сочетаний клавиш (Ctrl+C, Ctrl+V). | + | Производится привычным способом, в основном окне Base. Видимые объекты базы данных (таблицы, формы, запросы или отчёты) копируются и вставляются с помощью правой кнопки мыши или соответствующих сочетаний клавиш ('''Ctrl+C''', '''Ctrl+V'''). |
===Выделить все записи=== | ===Выделить все записи=== | ||
+ | Можно щелчком мыши по самой первой ячейке в заголовке таблицы. | ||
+ | |||
+ | Далее, можно скопировать все данные таблицы в электронную таблицу Calc просто перетащив мышью (удерживая левую кнопку) | ||
+ | в требуемое место листа электронной таблицы. | ||
+ | |||
===Специальная вставка=== | ===Специальная вставка=== | ||
===Вставка записей из электронной таблицы=== | ===Вставка записей из электронной таблицы=== | ||
Строка 119: | Строка 134: | ||
Откроется диалог вставки данных, где можно задать порядок следования и определить типы вставляемых данных. Если при этом какая-нибудь из таблиц была выделена, то будет предложено добавить данные. | Откроется диалог вставки данных, где можно задать порядок следования и определить типы вставляемых данных. Если при этом какая-нибудь из таблиц была выделена, то будет предложено добавить данные. | ||
- | ==Внешние данные== | + | ==[[Image:Base.png]] Внешние данные== |
+ | |||
{{Office}} Base позволяет подключаться к другим базам данных, адресным книгам, электронным таблицам и даже текстовым файлам. Доступные для подключения источники можно найти в раскрывающемся списке, если выбрать в [[Glossary#Мастер баз данных|Мастере баз данных]] пункт '''Подключиться к существующей базе данных'''. | {{Office}} Base позволяет подключаться к другим базам данных, адресным книгам, электронным таблицам и даже текстовым файлам. Доступные для подключения источники можно найти в раскрывающемся списке, если выбрать в [[Glossary#Мастер баз данных|Мастере баз данных]] пункт '''Подключиться к существующей базе данных'''. | ||
Для подключения других баз данных, возможно потребуются дополнительные [[Glossary#Драйвер|драйверы]] или предварительно созданные источники данных ODBC. | Для подключения других баз данных, возможно потребуются дополнительные [[Glossary#Драйвер|драйверы]] или предварительно созданные источники данных ODBC. | ||
===Дополнительная информация о драйверах баз данных=== | ===Дополнительная информация о драйверах баз данных=== | ||
+ | '''MySQL''' | ||
* http://wiki.services.openoffice.org/wiki/Connect_MySQL_and_Base | * http://wiki.services.openoffice.org/wiki/Connect_MySQL_and_Base | ||
- | * http://extensions. | + | * http://aoo-extensions.sourceforge.net/project/mysql_connector |
+ | * [[JdbcSetup| Настройка драйвера JDBC-MySQL]] | ||
+ | '''PostgreSQL''' | ||
* http://wiki.services.openoffice.org/wiki/Base/connectivity/PostgreSQL | * http://wiki.services.openoffice.org/wiki/Base/connectivity/PostgreSQL | ||
- | * http://wiki.services.openoffice.org/wiki/Documentation/How_Tos/Using_SQLite_With_OpenOffice.org | + | '''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=== | ||
Строка 165: | Строка 186: | ||
===MySQL=== | ===MySQL=== | ||
- | Подключить MySQL можно с помощью ODBC, JDBC или используя расширение [http://extensions. | + | Подключить MySQL можно с помощью ODBC, [[JdbcSetup| JDBC]] или используя расширение [http://aoo-extensions.sourceforge.net/ru/project/mysql_connector MySQL Connector for OpenOffice.org] |
+ | |||
+ | ==[[Image:Base.png]] Формы== | ||
- | |||
Форма - специальный объект Base, позволяющий редактировать и добавлять данные в таблицах в удобной для пользователя форме. Формы могут быть главными и подчинёнными. | Форма - специальный объект Base, позволяющий редактировать и добавлять данные в таблицах в удобной для пользователя форме. Формы могут быть главными и подчинёнными. | ||
Строка 174: | Строка 196: | ||
===Подчинённая форма=== | ===Подчинённая форма=== | ||
+ | Подчинённой формой называют форму, помещённую в другую форму. Главная и подчинённая форма чаще всего связаны определёнными полями, таким образом на основании данных в одном поле, находящемся в главной форме, меняются данные в полях подчинённой формы. | ||
+ | |||
+ | Примером применения подчинённой формы может быть представление данных по оценкам студента университета. Персональные данные студентов и их оценки содержатся в разных таблицах. Таблицы связаны между собой ключевым полем, например, идентификатором-счётчиком (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
Содержание |
Таблицы
Создание таблицы
Создать таблицу в локальной базе данных можно двумя путями:
- самостоятельно задать имена полей, типы и описания;
- с помощью мастера таблиц, выбрав готовую из предлагаемого набора и затем при необходимости изменив некоторые поля.
Название полей кириллическими символами
Кириллические символы в названиях полей локальной базы данных допустимы. Однако, в будущем вы можете столкнуться с проблемами совместимости.
Обязательно ли назначать ключ (первичный индекс) при создании таблиц?
Да, если планируете редактировать и добавлять данные в таблицу.
Что такое индексы?
см. Glossary#Индекс базы данных
Запросы
Выполнение запроса на удаление или обновление данных
В конструкторе запросов при попытке выполнения запроса на удаление или обновление данных появляется сообщение "Эта команда не является запросом типа 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 - Базы данных. Выберите источник из списка, нажмите Правка.
Копирование и вставка
Копирование и вставка записей в БД
Копирование нескольких записей
Выполняется аналогично копированию в электронных таблицах. Перед копированием необходимо выделить записи, пометив их в столбце-заголовке строк. Выделенные записи можно перетащить мышью в требуемую таблицу для вставки (в том числе и на лист Calc).
Копирование и вставка объектов БД
Производится привычным способом, в основном окне Base. Видимые объекты базы данных (таблицы, формы, запросы или отчёты) копируются и вставляются с помощью правой кнопки мыши или соответствующих сочетаний клавиш (Ctrl+C, Ctrl+V).
Выделить все записи
Можно щелчком мыши по самой первой ячейке в заголовке таблицы.
Далее, можно скопировать все данные таблицы в электронную таблицу Calc просто перетащив мышью (удерживая левую кнопку) в требуемое место листа электронной таблицы.
Специальная вставка
Вставка записей из электронной таблицы
Сначала необходимо выделить и скопировать необходимый диапазон в Calc или Excel. Затем перейти в основное окно Base, группу Таблицы и вставить диапазон с помощью правой кнопки мыши.
Откроется диалог вставки данных, где можно задать порядок следования и определить типы вставляемых данных. Если при этом какая-нибудь из таблиц была выделена, то будет предложено добавить данные.
Внешние данные
LibreOffice/OpenOffice Base позволяет подключаться к другим базам данных, адресным книгам, электронным таблицам и даже текстовым файлам. Доступные для подключения источники можно найти в раскрывающемся списке, если выбрать в Мастере баз данных пункт Подключиться к существующей базе данных. Для подключения других баз данных, возможно потребуются дополнительные драйверы или предварительно созданные источники данных ODBC.
Дополнительная информация о драйверах баз данных
MySQL
- http://wiki.services.openoffice.org/wiki/Connect_MySQL_and_Base
- http://aoo-extensions.sourceforge.net/project/mysql_connector
- Настройка драйвера JDBC-MySQL
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 производится общим способом, описанным в начале раздела: в списке Подключиться к существующей базе данных выберите пункт dBase, а затем укажите каталог с файлами DBF.
Подключение нескольких таблиц DBF одновременно
Для подключения нескольких таблиц сложите их в один каталог, а затем подключите.
Электронная таблица
С помощью электронной таблицы удобно вводить первичные данные. А с помощью LibreOffice/OpenOffice Base удобно анализировать большой массив данных, выполнять выборку и готовить отчёты. Неудивительно, что пользователи желают для своей работы использовать оба инструмента. Работа с электронной таблицей в Base возможна по следующим схемам:
- Электронная таблица подключается в качестве внешних данных.
- В электронной таблице выделяется диапазон, копируется, затем вставляется в Base как таблица.
Подключение электронной таблицы в качестве внешних данных
- Создайте новую базу данных, в Мастере баз данных укажите пункт Подключиться к существующей базе данных, выберите пункт Эл. таблица, нажмите Далее.
- Укажите расположение файла электронной таблицы, нажмите Далее
- При необходимости зарегистрируйте базу в качестве источника данных.
Определение типов данных полей при подключении электронной таблицы
Тип данных определяется для каждого столбца электронной таблицы автоматически на основе существующих данных. Например, при наличии хотя бы одного текстового значения в столбце тип данных будет определён как текстовый.
Подключение таблицы Microsoft Excel
Порядок подключения таблицы аналогичен, см. #Подключение электронной таблицы в качестве внешних данных.
MS 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, JDBC или используя расширение MySQL Connector for OpenOffice.org
Формы
Форма - специальный объект Base, позволяющий редактировать и добавлять данные в таблицах в удобной для пользователя форме. Формы могут быть главными и подчинёнными.
Создание форм
Создать форму можно вручную, с помощью конструктора, или используя Мастер создания форм. Если форма создаётся впервые, используйте Мастер.
Подчинённая форма
Подчинённой формой называют форму, помещённую в другую форму. Главная и подчинённая форма чаще всего связаны определёнными полями, таким образом на основании данных в одном поле, находящемся в главной форме, меняются данные в полях подчинённой формы.
Примером применения подчинённой формы может быть представление данных по оценкам студента университета. Персональные данные студентов и их оценки содержатся в разных таблицах. Таблицы связаны между собой ключевым полем, например, идентификатором-счётчиком (ID). Главная форма будет содержать персональные данные студента; подчинённая - его оценки.
Создавать подчинённые формы удобнее всего с помощью Мастера форм, сразу при создании главной формы.
Вкладки в формах
Элемент управления Вкладки в LibreOffice/OpenOffice пока не реализован.
Отчёты
Отчёт - это форма представления данных из баз данных, предназначенная для просмотра и распечатки на принтере. Данные, представленные в отчёте, нельзя редактировать.
Создание отчёта произвольной формы
Для создания отчётов произвольной формы установите и используйте расширение Oracle Report Builder http://aoo-extensions.sourceforge.net/en/project/reportdesign
Полезные ссылки
- #Дополнительная информация о драйверах баз данных
- SQL
- Статья из LinuxFormat о создании БД в Base
- Статья из LinuxFormat о создании БД в Base часть 2
- Документация по созданию и использованию Base на MyOOo.ru
- Документация по MySQL
- Официальный сайт MySQL
- Официальный сайт PostgreSQL
- Официальный сайт HSQLDB
- Расширения для LibreOffice Base