Difference between revisions of "RU/kb/00000352"
(One intermediate revision by the same user not shown) | |||
Line 28: | Line 28: | ||
{{Caution|Строка <tt>file:///home/andrew/separate_db</tt> указывается без расширения odb, поэтому подключаемые файлы должны быть с расширением odb.}} | {{Caution|Строка <tt>file:///home/andrew/separate_db</tt> указывается без расширения odb, поэтому подключаемые файлы должны быть с расширением odb.}} | ||
− | <li> {{ | + | <li> {{DocLinux|В ОС Линукс возможно для файла указывать URL типа<br> |
<tt>http://[user][:passwd]@[host][:path]</tt><br> | <tt>http://[user][:passwd]@[host][:path]</tt><br> | ||
<tt>ssh://[user][:passwd]@[host][:path]</tt><br> | <tt>ssh://[user][:passwd]@[host][:path]</tt><br> | ||
Line 44: | Line 44: | ||
− | {{SignYear|BigAndy|А. | + | {{SignYear|BigAndy|А. А. Рыбак|2010}} |
{{RUkbBaseBottom}} | {{RUkbBaseBottom}} |
Latest revision as of 18:53, 19 September 2011
Режим работы "по умолчанию" с RDBMS HSQLDB в OpenOffice.org Base по умолчанию представляет собой однопользовательский неразделяемый режим с правами доступа DBA (В терминах HSQLDB -"SA"-"System Administrator")
Это означает, что одновременно к файлу с данными в HSQLDB может иметь доступ одновременно только один человек и защитить эти данные практически невозможно. Побочным осложняющим эффектом этого режима является возможность работы с данными таблиц default_table_type=memory , то есть только тех, которые помещаются в имеющуюся оперативную память, а переполнение стека данных неизбежно приводит к краху приложения, о чём пестрят сообщения на специализированных форумах.
Однако, существует простой штатный способ подключения файла базы данных в режиме многопользовательского разделяемого доступа.
Сначала определим, в каком режиме настроено подключение по умолчанию. Откроем OpenOffice.org и создадим новую базу данных (её можно не регистрировать).
Исследуем строку статуса OpenOffice.org Base.
Как видим, в строке статуса написано "Встроенная база данных". И "База данных HSQL". Создадим нужные нам таблицы, запросы, формы и отчёты и сохраним её в отдельную директорию, которая должна быть доступна другим пользователям, которых мы хотим подключить к нашей новой базе данных.
Далее:
- Создаём базу данных с расширением odb (в целях упрощения дальнейшего подключения расширение изменять не следует, а имена требуется задавать в соответствии с правилами POSIX, чтобы в дальнейшем возможно было бы подключение, например, через интернет).
- Открываем меню Сервис → Настройки → Java → Путь Класса и в свойствах java прописываем путь до java-класса с контейнером hsqldb.jar (рис. 2).
- Файл → создать → Новая база данных → подключиться к существующей базе данных → выбрать драйвер JDBC.
- Пункт "URL источника данных" прописываем URL в соответствии с правилами POSIX или в соответствии с правилами именования URI операционной системы. Однако рекомендуется именование в соответствии со стандартом POSIX, поскольку кириллические знаки в противном случае с большой вероятностью придётся заменять на их UTF-нотации с процентами (например, пробел будет именоваться %20). hsqldb:file:///home/andrew/separate_db;default_schema=true;shutdown=true;hsqldb.default_table_type=cached;get_column_name=false
- Далее в пункте "Класс драйвера JDBC указываем org.hsqldb.jdbcDriver проверяем правильность подключения нажав кнопку проверить класс . Если возникнет сообщение "JDBC драйвер успешно загружен", то все параметры указаны правильно.
- При щелчке по кнопке Тестовое соединение должно быть получено сообщение "Тестирование соединения. Соединение успешно загружено". Если да, следует щёлкнуть Далее и указать имя пользователя "SA" (это суперпользователь HSQLDB, иными словами, DBA).
Сохраняем файл, открываем и работаем с удалёнными данными как с локальными.