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

From Apache OpenOffice Wiki
Jump to: navigation, search

RU UA

Contents

OOo section.pngИмпорт данных

Принять участие в проекте!
Общие вопросы
Форматирование ответов
Вопросы использования
Популярные разделы:
Writer: Часто задаваемые вопросы
Calc: Часто задаваемые вопросы
Орфография и грамматика
Полезности и секреты
Главная страница

Как импортировать электронную таблицу?

В Calc копируете массив, в Base - правой мышкой по полю с таблицами - Вставить. Появится Мастер.

2.3

Есть ли способ подключить таблицу DBF в ООо Base?

Да, Base - Создать подключение - dBase   указывайте путь к каталогу, где хранятся DBF-файлы.

2.3

Где найти и как установить драйвера для доступа к MySQL, PostgreSQL, ...?

OOo может работать с базами данных через драйвера ODBC, JDBC и SDBC. Наиболее предпочтительным вариантом является SDBC - драйвера, созданные специально для OOo.

2.4

OOo section.pngЗапросы

ООо Base не выполняет запросы, кроме SELECT, сообщает "Запрос не является типом SELECT. Разрешены только запросы, не изменяющие данные."

Используйте Сервис - SQL   

Другой способ:

  1. Открывается дизайнер запроса и конструируется соответствующий SELECT запрос.
  2. Далее этот дизайнер переводится в режим правки SQL, select заменяется на insert into с указанием полей и (SIC) не переходя снова в режим визуальной правки протестировать и сохранить запрос.
  3. Далее только вызывать без открытия в режиме визуального проектирования.
Documentation caution.png При наличии right(left,inner,outer) join необходимо удалить в режиме правки SQL

некие паразитарные конструкции типа "{OJ", "}", которые могут быть вставлены визуальным конструктором.

2.3

Какие функции поддерживаются в запросах?

Список функций, используемых в запросах BASE

Приведите пример запроса с параметрами, работающего в Base

SELECT "ID", "texts" FROM "table1" WHERE "ID" = :x

2.3

Я хочу удалить записи о сотрудниках, у которых возраст больше 30. Приведите пример текста.

DELETE FROM "Таблица1" WHERE "возраст">30

2.3

Нужен пример запроса с параметрами, вроде аксесовского аналога Like [введите первые буквы]&"*" для текстового поля, записи у которых часть параметра совпадает?

SELECT "ID1", "texts" FROM "table1" WHERE "texts" LIKE :"Введите_первые_буквы"

Documentation note.png При требовании на ввод значения необходимо в конце ставить %, т.е. А%, б% и т.д.

2.3

OOo section.pngФормы

Как распечатать (сохранить) результат применения фильтра в форме?

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

2.3

OOo section.pngРабота с базами PostgreSQL

Как подключить базу PostgreSQL

Ответ на этот вопрос есть в статье Создание базы данных, форм и отчета в OOo Base, используя PostgreSQL

3.2

OOo section.pngРабота с базами Access

Можно ли сохранить базу в формате *.mdb?

Нет

3.0.1

Как подключить в OpenOffice.org 3 базу MS Access с паролем?

Documentation windows.png Совет применим только для ОС Windows


Подключиться с паролем можно через odbc.

Сначала создаётся odbc-источник к конкретной .mdb базе через Администрирование - Источники ODBC с выбором из списка доступных драйверов - MS Access Driver. При настройке можно указать логин и пароль. Источники выбирать системный (доступен для всех пользователей) или пользовательский.

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

3.0.1

Как можно конвертировать базу из формата Access во внутренний формат OpenOffice.org Base?

Для этого создаём подключённую к mdb базу, затем создаём новую базу нужного формата, потом копируем (ctrl+c, ctrl+v) нужные таблицы из старого файла в новый. При этом откроется мастер переноса.

2.3

Можно ли в OpenOffice.org DataBase открыть файлы Access?

Да. Но только в режиме доступа к данным. Формы и программная часть работать не будут. Откройте Base, выберите Подключение к существующей базе данных, Выберите из списка Microsoft Access Просмотр - укажите файл mdb


  • Один из вариантов подключения, когда к одному файлу MDB присоединяются несколько пользователей. Реализовано через "Связи таблиц" - эдакие "клиенты" и все работали одновременно.

Решение: Создать новую БД - подключиться к существующей - ODBC - далее - просмотр - настройка - системный DSN - добавить - настройка (Имя, БД и "дополнительно" задаёте свои - например "Archive" - так вы создадите алиас) - ОК - (выберите нужный алиас)- далее - введите имя пользователя (если есть разграничения внутри БД)- далее - готово.

Тут же предлагается сохранить файл (например под именем "клиенты"). Если БД находится в сети надо просто подправить ODBC в реестре чтобы направить его на сетевой путь: HKEY_LOCAL_MACHINE\SOFTWARE\ODBC\ODBC.INI\Archive - где Archive имя Алиаса DBQ = "\\server\share\MainArchive.mdb"

2.3

OOo section.pngОбщее

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

См. Совместное использование и сетевая работа: Часто задаваемые вопросы#Возможна ли совместная работа нескольких пользователей в Base?

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

В конструкторе таблиц Сервис - Проектирование индекса...    Cоздать новый индекс для выбранного поля и поставить галочку "Уникальный".

3.0

Как можно сжать базу данных Base?

Если используется HSQLDB (локальная БД OOo Base), то можно попробовать SHUTDOWN COMPACT или CHECKPOINT DEFRAG.

2.4

Создаю новую базу данных, создаю в ней таблицу, если добавить данные в ячейку, то при закрытии приложения пишет о неожиданной ошибке. Если создать форму для добавления данных в таблицу, то через неё всё отлично добавляется. Стоит открыть таблицу с уже введёнными через форму данных и, сделав там изменения, закрыть её - история повторяется. То же самое происходит при создании запросов, но не всегда. Иногда вываливается, иногда - нет. ОС Linux

Убедитесь, что Java установлена и используется. Для корректной работы в ООо Base требуется Java от Sun, поэтому также убедитесь что выбрана нужная версия.

Tip.png Проверить лучше всего в Сервис - Параметры - OpenOffice.org - Java.


2.3

Таблица открывается только на чтение. Таблица хранится на сервере и подключена через ODBC

Возможные причины:

  • При создании таблицы не было указано ключевое поле. В этом случае необходимо задать ключевое поле.
  • В настройках драйвера ODBC указан режим "только чтение".

2.3

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

Как превратить существующую БД в источник данных?

Это можно сделать на этапе создания новой БД на втором шаге мастера. Задаётся вопрос: Вы хотите, чтобы мастер зарегистрировал базу данных в OpenOffice.org. По умолчанию предлагается ответ Да, зарегистрировать базу данных.

Если необходимо зарегистрировать уже имеющуюся БД, то это можно сделать через Сервис - Параметры - База данных ООо  - Базы данных  Нажать кнопку Создать и выбрать требуемый файл БД.

3.0


Перейти к разделу: Writer | Calc | Общее | UI | Глоссарий | Принятые сокращения | Полезности | Содержание
Personal tools