Difference between revisions of "RU/kb/00000352"

From Wiki
Jump to navigationJump to search
 
 
(21 intermediate revisions by 3 users not shown)
Line 1: Line 1:
<!-- Обязательный элемент -->{{DISPLAYTITLE:База Знаний: Base. Работа с OOO Base в режиме разделения доступа (многопользовательском) к файлу базы данных .odb}}
+
<section begin=title /><noinclude>{{DISPLAYTITLE:База Знаний: {{OOoB|1}}. </noinclude>Работа с {{OOoB|1}} в режиме разделения доступа (многопользовательском) к файлу базы данных .odb<noinclude>}}</noinclude><section end=title />
<!-- Обязательный элемент -->[[RU/kb/base_external_data|База Знаний: Base. Внешние данные]]
+
{{BreadCrumbL10n|RU/kb/module/base/external_data}}
<!-- Обязательный элемент -->__NOTOC__
+
__NOTOC__
  
<!-- Обязательный элемент -->{{RU/documentation/needsrework}}
 
  
 +
Режим работы "по умолчанию" с RDBMS [[RU/kb/00000024|HSQLDB]] в {{OOoB}} по умолчанию представляет собой однопользовательский неразделяемый режим с правами доступа DBA (В терминах HSQLDB -"SA"-"System Administrator")
  
<section begin=question/>
+
Это означает, что одновременно к файлу с данными в HSQLDB может иметь доступ одновременно только один человек и защитить эти данные практически невозможно. Побочным осложняющим эффектом этого режима является возможность работы с данными таблиц '''default_table_type=memory''' , то есть только тех, которые помещаются в имеющуюся оперативную память, а переполнение стека данных неизбежно приводит к краху приложения, о чём пестрят сообщения на специализированных форумах.
  
Режим работы "по умолчанию" с RDBMS [HSQLDB][http://www.example.com заголовок ссылки] в OOOBase по умолчанию представляет собой однопользовательский неразделяемый режим с правами доступа DBA (В терминах HSQLDB -"SA"-"System Administrator")
+
Однако, существует простой штатный способ подключения файла базы данных в режиме многопользовательского разделяемого доступа.
Это означает, что одновременно к файлу с вашими данными в HSQLDB может иметь одновременно только один человек и защитить эти данные практически невозможно. Побочной осложняющим эффектом этого режима является возможность работы с данными таблиц default_table_type=memory , то есть только тех, которые помещаются в имеющуюся оперативную память, а переполнение стека данных неизбежно приводит к краху приложения, о чем пестрят сообщения на специализированных форумах.
 
Однако, существует простой штатный способ подключения файла базы данных в режиме многопользователского разделяемого доступа.
 
  
<section end=question/>
 
  
<section begin=answer/>
+
Сначала определим, в каком режиме настроено подключение по умолчанию. Откроем {{OOo}} и создадим новую базу данных (её можно не регистрировать).
  
Сначала определим, в каком режиме у вас подключение по умолчанию. Откроем OOO и создадим новую базу данных (ее можно не регистрировать).
+
Исследуем строку статуса {{OOoB}}.[[File:Out.png|700px|thumb|right|Рис. 1]]
Исследуем строку статуса OOO Base.
 
[img=http://wiki.services.openoffice.org/w/images/thumb/0/0c/Out.png/800px-Out.png[/img]
 
(Рис.1)
 
Как видим, в строке статуса написано "Встроенная база данных". И "База данных HSQL". Создадим нужные нам таблицы, запросы, формы и отчеты и сохраним ее в отдельную директорию, которая должна быть доступна другим пользователям, которых мы хотим подключить к нашей новой базе данных.
 
  
Далее
+
Как видим, в строке статуса написано '''"Встроенная база данных"'''. И '''"База данных HSQL"'''. Создадим нужные нам таблицы, запросы, формы и отчёты и сохраним её в отдельную директорию, которая должна быть доступна другим пользователям, которых мы хотим подключить к нашей новой базе данных.
1) Создаем базу данных с расширением odb (В целях упрощения дальнейшего подключения расширение не меняйте, а имена  задавайте в соответствии с правилами POSIX, чтобы в дальнейшем возможно было бы подключение, например, через интернет )
 
2) Открываем меню Сервис → Настройки → Java → Путь Класса и в свойствах java прописываем путь до java-класса с контейнером hsqldb.jar (рис2)
 
3) Файл →создать → Новая база данных → подключиться к существуюещей базе данных → выбрать драйвер JDBC
 
4) Пункт "URL источника данных" прописываем URL в соответсвии с правилами POSIX или в соответсвии с правилами именования URI своей операционной системы. Однако рекомендуется именование в соответствии со стандартом POSIX, поскольку кириллические знаки в противном случае с большой вероятностью придется заменять на их UTF-нотации с процентами (например, пробел будет именоваться %20)
 
[code]hsqldb:file:///home/andrew/separate_db;default_schema=true;shutdown=true;hsqldb.default_table_type=cached;get_column_name=false[/code]
 
'''SIG! Строка file:///home/andrew/separate_db указывается без расширения odb, поэтому подключаемые файлы должны быть с расширением odb'''
 
  
4.a) В ОС Линукс возможно для файла указывать URL типа
 
[code]http://[user][:passwd]@[host][:path][/code] , [code]ssh://[user][:passwd]@[host][:path][/code], [code]ftp://[user][:passwd]@[host][:path][/code], [code]smb://[user][:passwd]@[host][:path][/code] ...
 
4.б) В Windows формат строки может быть и cifs-подобным \\server\disk_letter:\path.
 
  
5) Далее в пункте "Класс драйвера JDBC указываем [code]org.hsqldb.jdbcDriver[/code] проверяем правильность подключения нажав кнопку "проверить класс". Если возникнет сообщение "JDBC драйвер успешно загружен", то все параметры указаны правильно.
+
Далее:
 +
<ol>
 +
<li> Создаём базу данных с расширением odb (в целях упрощения дальнейшего подключения расширение изменять не следует, а имена требуется задавать в соответствии с правилами POSIX, чтобы в дальнейшем возможно было бы подключение, например, через интернет).
 +
<li> Открываем меню {{Menu|Сервис|Настройки|Java|Путь Класса}} и в свойствах java прописываем путь до java-класса с контейнером hsqldb.jar (рис. 2).
 +
<li> {{Menu|Файл|создать|Новая база данных|подключиться к существующей базе данных|выбрать драйвер JDBC}}.
 +
<li><ul><li> Пункт '''"URL источника данных"''' прописываем URL в соответствии с правилами POSIX или в соответствии с правилами именования URI операционной системы. Однако рекомендуется именование в соответствии со стандартом POSIX, поскольку кириллические знаки в противном случае с большой вероятностью придётся заменять на их UTF-нотации с процентами (например, пробел будет именоваться %20).
  
6) Нажимаем кнопку {{Key|"Тестовое соединение"}} и должны получить сообщение "Тестирование соединения. Соединение успешно  загружено". Если получили, Нажимаем {{Key|"далее"}} и указываем имя пользователя "SA" (это суперпользователь HSQLDB, иными словами, DBA).
+
<tt>hsqldb:file:///home/andrew/separate_db;default_schema=true;shutdown=true;hsqldb.default_table_type=cached;get_column_name=false</tt>
  
Сохраняем файл, открываем и работаем с удаленными данными как с локальными.
+
{{Caution|Строка <tt>file:///home/andrew/separate_db</tt> указывается без расширения odb, поэтому подключаемые файлы должны быть с расширением odb.}}
 +
<li> {{DocLinux|В ОС Линукс возможно для файла указывать URL типа<br>
 +
<tt>http://[user][:passwd]@[host][:path]</tt><br>
 +
<tt>ssh://[user][:passwd]@[host][:path]</tt><br>
 +
<tt>ftp://[user][:passwd]@[host][:path]</tt><br>
 +
<tt>smb://[user][:passwd]@[host][:path]</tt>}}
 +
<li> {{DocWindows|В Windows формат строки может быть и cifs-подобным \\server\disk_letter:\path}}
 +
</ul>
 +
<li> Далее в пункте "Класс драйвера JDBC указываем <tt>org.hsqldb.jdbcDriver</tt> проверяем правильность подключения нажав кнопку {{Key|проверить класс}}. Если возникнет сообщение ''"JDBC драйвер успешно загружен"'', то все параметры указаны правильно.
 +
<li> При щелчке по кнопке {{Key|Тестовое соединение}} должно быть получено сообщение '''"Тестирование соединения. Соединение успешно загружено"'''. Если да, следует щёлкнуть {{Key|Далее}} и указать имя пользователя '''"SA"''' (это суперпользователь HSQLDB, иными словами, DBA).
 +
</ol>
  
</Область описания решения>
+
Сохраняем файл, открываем и работаем с удалёнными данными как с локальными.
<section end=answer/>
 
  
  
<!-- Обязательный элемент -->[[RU/kb/index/50000009|Индекс: Base]]
 
  
<section begin=signature/>
 
<!-- Обязательные элементы -->
 
<!-- 1 -->{{RU/documentation/signyear|<Login>|<А. Р. Рыбак>|<год 2010>}}
 
<section end=signature/>
 
  
{{KbBaseBottom}}
+
{{SignYear|BigAndy|А. А. Рыбак|2010}}
 +
{{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.

Рис. 1

Как видим, в строке статуса написано "Встроенная база данных". И "База данных HSQL". Создадим нужные нам таблицы, запросы, формы и отчёты и сохраним её в отдельную директорию, которая должна быть доступна другим пользователям, которых мы хотим подключить к нашей новой базе данных.


Далее:

  1. Создаём базу данных с расширением odb (в целях упрощения дальнейшего подключения расширение изменять не следует, а имена требуется задавать в соответствии с правилами POSIX, чтобы в дальнейшем возможно было бы подключение, например, через интернет).
  2. Открываем меню Сервис → Настройки → Java → Путь Класса и в свойствах java прописываем путь до java-класса с контейнером hsqldb.jar (рис. 2).
  3. Файл → создать → Новая база данных → подключиться к существующей базе данных → выбрать драйвер 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
      Documentation caution.png Строка file:///home/andrew/separate_db указывается без расширения odb, поэтому подключаемые файлы должны быть с расширением odb.
    • Documentation linux.png В ОС Линукс возможно для файла указывать URL типа

      http://[user][:passwd]@[host][:path]
      ssh://[user][:passwd]@[host][:path]
      ftp://[user][:passwd]@[host][:path]
      smb://[user][:passwd]@[host][:path]

    • Documentation windows.png В Windows формат строки может быть и cifs-подобным \\server\disk_letter:\path
  4. Далее в пункте "Класс драйвера JDBC указываем org.hsqldb.jdbcDriver проверяем правильность подключения нажав кнопку  проверить класс . Если возникнет сообщение "JDBC драйвер успешно загружен", то все параметры указаны правильно.
  5. При щелчке по кнопке  Тестовое соединение  должно быть получено сообщение "Тестирование соединения. Соединение успешно загружено". Если да, следует щёлкнуть  Далее  и указать имя пользователя "SA" (это суперпользователь HSQLDB, иными словами, DBA).

Сохраняем файл, открываем и работаем с удалёнными данными как с локальными.











К началу страницы