「Web出版サイト」ベータ公開

Q&A集[?]

当サイトでのご質問の受付は終了しました

すべてのコンテンツを読み込み専用としたため、回答欄からも投稿できません

Apache OpenOffice/LibreOfficeのご質問はそれぞれのフォーラムへご投稿ください

質問コーナー

サイト内検索

分類メニュー

関連サイト


本日:1
昨日:0
総数:2667
現在:4


ファイルが落ちた後、データが消滅する

ページOpenOffice.org FAQの登録ページ
投稿者七篠
分類
edit/refer
優先順位
edit/refer
状態
edit/refer
カテゴリー
edit/refer
投稿日2011-03-05 18:17:35 (土)
OSxp sp3
依存するページ
バージョン
edit/refer

メッセージ

回答ページでは行末に「~」を付加する必要はありません

Base のフォームでデータを入力していたところ、マウスカーソルが 断続的に砂時計になり、しばらくした後ファイルが落ちました。 ドキュメントの回復をして開き直すとテーブル・クエリー・フォーム 全てのデータが消滅していました。 ファイルを閉じて開き直そうとしたところ、開くことができなくなってしまいました。

その後、一度同じようなマウスカーソルの現象が確認されたため、 慌ててファイルを保存して終了したら同じようなことは起きませんでした。


標準データベースについて

M.Kamataki (2011-03-06 11:20:45 (日))

Base標準のデータベース形式を利用する限り、クラッシュには弱いです。また、ODBというファイル形式は世界共通規格のOpenDocument Format(ODF)ではありません。したがって、Baseに関しては、OpenOffice.orgのファイル形式にこだわる必要はないと思います。

クラッシュに対応するなら、Base標準のデータベース形式を使うのではなく、外部データベースを使いましょう。この場合、ODBファイルにはテーブルは格納されず、データベースサーバー側に保持されます。したがって、OpenOffice.orgとはプロセスが別で動作しますから、OpenOffice.orgのクラッシュ時に少なくともテーブルがなくなるということにはなりません。

Base標準のデータベース形式はいろいろ制限がありますし、仕事でお使いになるのであれば、外部データベースをお使いになるのが良いと思います。

Base標準のデータベース形式はいろいろ制限がある件については、以下のプレゼン資料にまとめてあります。2008年時の資料ですが、現在もあまり状況は変わっていません。

http://openoffice-docj.sourceforge.jp/wiki/images/HowToBase200808.pdf

無題

七篠 (2011-03-06 21:56:55 (日))

どうやら Base は問題があるようですね。
全く知らなかったので驚きです。

用途は仕事ではなく、家計簿に利用しています。
出来がよければ家族や友人に配ろうと思っているので、
サーバーのインストールや設定が必要ない(であろうと思われる)
ファイルベースのアクセスを選択しようと思います。
提示していただいた資料にはこの方法の詳しい説明がなかったため
これについての説明をした web ページなどご存知でしたら
教えていただけると幸いです。

ファイルベースのアクセス

M.Kamataki (2011-03-07 18:05:01 (月))

上記プレゼン資料の8ページのことですね。これらは、データベースウィザードで最初に、「既存のデータベースに接続」をチェック、「JDBC」を選んで次の画面で入力する項目です。つまり下図のように設定します。

faq6_163_01.jpg

「ユーザー認証のセットアップ」画面は未記入のままでOKです。保存すると、c:\database フォルダにdb.properties、db.script、db.logなどのファイルが作成されます。テーブルが作成されると db.script に格納されます。

なお、c:\database フォルダが未作成の場合は、自動的に作成されます。あとは、標準のデータベースを扱っているのと同じように操作できます。お試しいただければと思います。

無題

七篠 (2011-03-09 00:59:48 (水))

JDBC ドライバクラスのテストクラスを行うと
「JDBC ドライバは読み込まれませんでした。」
とダイアログが出ます。
HSQL は OpenOffice デフォルトのデータベースらしいですが
JDBC のインストールが必要なのでしょうか?

クラスパスの設定

M.Kamataki (2011-03-09 11:10:56 (水))

OpenOffice.org 2の頃は不要だったんですが、そういえばクラスパスの設定が必要でした。

設定の説明の前に、HSQLDBについて補足しておきます。HSQLDBはJavaで作成されたデータベースで、本体はhsqldb.jarファイルです。また、JDBCドライバもこのファイルが兼ねています。hsqldb.jarファイルをアーカイブとしてクラスパスに追加します。

方法は、メニューの「ツール」-「オプション」でダイアログボックスを表示し「OpenOffice.org」-「Java」を選択します。「クラスパス」ボタンをクリックすると「クラスパス」ダイアログボックスが表示されます。「アーカイブを追加」ボタンをクリックして、hsqldb.jarファイルを指定します。同ファイルは、C:\Program Files\OpenOffice.org 3\Basis\program\classesフォルダにあります。下図を参考にしてください。

faq6_163_02.jpg

わたしは、C:\Program Files\java\jre6\lib\ext に放り込んでいたのを忘れていました。すみません。

無題

七篠 (2011-03-10 09:14:22 (木))

上手くいきました。 画像まで用いた丁寧な説明ありがとうございます。
非常に分かりやすかったです。

これによりデータは .odb ファイルではなく下記「パス」の「データベース名.*」ファイルに保存されるという理解で正しいでしょうか?

jdbc:hsqldb:[パス]\[データベース名];default_schema=true

また、バックアップ&レストアは上記パスの「データベース名.*」ファイルを
保存し、レストア時はそのデータベースの設定で「データソースの URL」を
そのファイルがある場所とデータベース名を指定してやればいいのでしょうか?

HSQLDBのファイル

M.Kamataki (2011-03-10 16:07:30 (木))

>これによりデータは .odb ファイルではなく下記「パス」の「データベース名.*」ファイルに保存されるという理解で正しいでしょうか?

主に「〜.script」ファイルです。テキストファイルなので覗いてみると良いでしょう。

バックアップ&レストアはお書きになったとおりです。HSQLDBに関しては、公式サイトが以下にあります。英語ですが、ドキュメントは揃っていると思います。

http://hsqldb.org/

ただ、ご質問の目的であるクラッシュ時にどうなるかはわからないです。実行中の動作内容はSQL文として「〜.log」ファイルに格納されます(次回起動時に「〜.script」にまとめられるっぽい)。クラッシュした際、「〜.log」ファイルに内容が残っていれば、修復は可能だと思いますが。

DropBoxのように履歴が残るネットストレージサービスにファイルを置いておくというのも安全策だと思います。履歴を残しておけば、クラッシュ前のファイルに戻せます。

無題

七篠 (2011-03-10 23:36:22 (木))

お返事ありがとうございます。

クラッシュ時にどうなるか、今度クラッシュの予兆があればそのまま
様子を見てみようと思います(もちろんバックアップをとりつつ)。

多くの質問に答えていただき、ありがとうございました!

お名前:
題名:


添付ファイル: filefaq6_163_02.jpg 431件 [詳細] filefaq6_163_01.jpg 472件 [詳細]