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

Q&A集[?]

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

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

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

質問コーナー

サイト内検索

分類メニュー

関連サイト


本日:1
昨日:0
総数:3319
現在:2


OpenOffice.org 2.0.1インストール時の注意点

メッセージ

OpenOffice.org 2.0.1は多くの不具合が修正されていますが、それにともない2.0のBaseファイルを読み込む際に問題が生じます。

この問題の詳細と対応方法を説明します。


日本語のファイル名フォルダパスを持つ2.0のBaseファイルは、前もってテーブルを他のファイルへコピー(バックアップ)しておいてください

M.Kamataki (2005-12-27 23:04:30 (火))

OpenOffice.org 2.0.1では、2.0で発生していたBaseの多くの不具合が修正されています。その中に、Baseファイルの名前やファイルパスに日本語などのASCII文字以外の文字が含まれている場合に、コピーやファイル移動後にテーブルが表示されなくなるという不具合の修正も含まれています。

この修正により、名前やファイルパスに日本語などのASCII文字以外の文字が含まれている、2.0で作成したBaseファイルは、2.0.1ではテーブルが表示されなくなります。そのため、2.0.1にアップデートする前に以下の手順で、テーブル部分だけ他のBaseファイルへコピーしておいてください。(faq/28ページの「テーブルのコンバート方法」に画像入りの説明があります。こちらも参考にしてください)

  1. OpenOffice.orgのデータベースを起動します。
  2. データベースウィザードで新しい標準(HSQLDB)形式のデータベースを作成します。
  3. Baseファイルを保存する際には、ファイル名やフォルダパスがすべてASCII文字(英数字)になるよう注意してください。
  4. 3.で作成したBaseファイルと問題のあるBaseファイルを開きます。
  5. コンバートもとのファイルの[テーブル]カテゴリでコピーするテーブルをクリックし、[編集]メニューから[コピー]を選択します。
  6. コンバート先のファイルで[テーブル]カテゴリを開き、[編集]メニューから[貼り付け]を選びます。
  7. 表示される[テーブルのコピー]ダイアログで[次へ]をクリックします。
  8. [列の適用]ダイアログで[>>]をクリックし、フィールドをすべて右のエリアへ移動し[次へ]をクリックします。
  9. [タイプの書式設定]ダイアログで[完了]をクリックします。

    テーブルの数だけ、5〜9を繰り返せば、コピー作業は終了です。

OpenOffice.org 2.0.1をインストールした後は、テーブルが表示されなくなったBaseファイルに、コピーのBaseファイルからテーブルをコピー&ペーストして元に戻します。手順は、上記の5〜9と同じになります。

なお、ここで書いた対応方法では、テーブルデータがファイルの中に二重に存在することになるためファイル容量が膨らんでしまいます。気になる方は、odbファイルの拡張子をzipに変えて、Baseファイルの内容を編集、重複部分を削除して、改めてZIP圧縮し拡張子をodbに戻せば半分になります。

バックアップ作業が必要なファイルの見分け方

M.Kamataki (2005-12-28 11:35:43 (水))

●Windows の場合

■バックアップ作業が必要と考えられる Base のファイル

  • Base のファイル名に日本語などの全角文字やフランス語・ドイツ語などの特別な文字が含まれている場合

    例: 顧客マスター.odb

  • Windows のアカウント名(ユーザー名)に上記の文字が含まれていて、マイドキュメント配下に Base のファイルが保存されている場合

    例: オープン太郎

    C:\Documents and Settings\オープン太郎\My Documents\sample_database.odb のように、パス名中に問題となる文字が含まれてしまうため

■上記以外の場合でバックアップ作業が必要かどうかを確かめる方法

1. ファイルの複製を作る

database.odb → コピー 〜 database.odb

2. ファイル名の拡張子を .zip へ変更する

コピー 〜 database.odb → コピー 〜 database.zip

3. Windows XP の場合は、ダブルクリックして、ファイル名およびフォルダ名を確認する

  • databaseフォルダに〜.properties、〜.script、〜.backup、〜.dataというファイルが存在し、さらに「〜」の部分が意味不明な文字列だった場合は、バックアップが必要
  • databaseフォルダにproperties、script、backup、dataというファイルだけが存在する場合は、バックアップは不要。

    ※Windows 2000 以前の場合は、圧縮解凍ソフトで、zip 圧縮を解凍して、ファイル名およびフォルダ名を確認する

2.0.1にアップデート後、テーブルが表示されなくなった場合

M.Kamataki (2005-12-28 14:09:02 (水))

以下の方法で、テーブルを再表示可能だと思います。お試しください。

odbファイルの拡張子をzipに変更します(上記の「バックアップ作業が必要なファイルの見分け方」も参考にしてください)。Windows XP の場合は、zipに変更したファイルをダブルクリックします。

databaseフォルダに以下のようなファイルがあるはずです。

〜.properties
〜.script
〜.backup
〜.data

これらを適当なフォルダへコピーし、意味不明な文字列になっている「〜」の部分をそれぞれ同じ文字列に変更します。なお、〜.backup、〜.dataがない場合もあります。そのときは、2つのファイルだけで同じ作業を行います。「〜」の部分が複数の種類のものが存在する場合は、「〜」の部分の種類の数だけ、「〜」の部分の名前を変えて以下の作業を繰り返してください。(おそらくファイル容量や日付で判断しあやしいものだけでも十分だとは思いますが)

ここでは「test」に変え、c:\databeseフォルダにコピーしたものとします。以下の手順で、消えたテーブルをリードオンリーで表示できるはずです。このテーブルを2.0.1で利用するBaseファイルへコピーしてください。コピー後は、追加可能なテーブルとなるはずです。追加可能にならない場合は、プライマリキーが作成されているかどうかチェックしてください。

  1. Baseを起動し、データベースウィザードのステップ1で[既存のデータベースに接続]をチェックし、「JDBC」を選んで[次へ]をクリック
  2. ステップ2画面では、[データベースのURL]欄に「jdbc:」に続けて「hsqldb:c:\database\test」と、[JDBCドライバクラス]欄に「org.hsqldb.jdbcDriver」 と入力し[次へ]をクリック
  3. ステップ3画面では、[ユーザー名]欄に「sa」と入力し[次へ]をクリック
  4. ステップ4画面で[完了]をクリック
  5. ファイルに名前を付けて保存

〜.properties、〜.script、〜.backup、〜.data、これらのファイルの役割は、
「Appendix C. Hsqldb Database Files and Recovery」
http://hsqldb.sourceforge.net/doc/guide/apc.html
をご覧になってください。

なお、上記で作成したテーブル表示用のodbファイル「hsqldb_test.odb」を当ページに添付しておきます。上記と同じc:\databaseに「test.〜」という名前で各ファイルをコピーすれば、このファイルでテーブルを表示できます。

お名前:
題名:


添付ファイル: filehsqldb_test.odb 1339件 [詳細]