きづいたら、Baseの「既存のデータベースに接続」からPostgreSQLが消えていました。

さっそく、回避策です。

【前提条件】

  1. OSはUbuntu16.04とWindows10
  2. LibreOfficeのバージョンは、5.2以上
  3. PostgreSQLサーバは別PCで、常時運用中
  4. PostgreSQLのJDBCドライバをダウンロード済み

<手順>

  1. PostgreSQLのJDBCドライバのパスを指定
  2. Baseで新規データベース作成
  3. 動作確認

1.PostgreSQLのJDBCドライバのパスを指定

PostgreSQLのサイトから、最新または適切なバージョンのJDBCドライバをダウンロードする。

LibreOfficeを起動し、「ツール」>「オプション」>LibreOffice「詳細」をクリックする。

次に、「クラスパス」>「アーカイブを追加」をクリックします。そのあと、先ほどダウンロードしたPostgreSQLのJDBCドライバを指定する。追加されたことを確認したら、「OK」をクリック。

2.Baseで新規データベース作成

LibreOfficeを起動し、Baseをクリックする。

(1)データベースの選択

「既存のデータベースに接続」をクリックする。(このとき、ドライバはJDBCを選択しておく)
「次へ」をクリック。

(2)JDBC接続のセットアップ

データソースのURLに、「postgresql://postgresサーバのIPアドレス:5432/データベース名」を指定する。
JDBCドライバークラスに、「org.postgresql.Driver」を指定する。「テストクラス」をクリックすると、「JDBCドライバーが正常に読み込まれました。」が表示されるので、「OK」をクリックする。(先のメッセージが表示されない場合は、再度、入力した内容をチェックします。)

(3)ユーザ認証のセットアップ

ユーザ名にデータベースのユーザ名を指定する。「パスワードを要求する」にチェックを入れ、「接続テスト」をクリックする。データベースの「パスワード」を入力し、「OK」をクリックする。

「正常に接続が確立できました。」が表示されたら「OK」をクリックする。

(4)保存して続行

「完了」をクリックすると、データベースの保存場所を聞かれるので、適切な場所を選択して、名前を付けて保存する(図7)。その後、接続したデータベースが開く(図8)。これで、接続完了。

3.動作確認

作成したデータベースファイル(odb)を開き、テーブルをクリックすると、「認証が必要です」が表示されるので、データベースへのパスワードを入力し、「OK」を押す。しばらく待つと、データベース内のテーブルなどが表示される。