■応用の森 LibreOffice Base によるデータベース接続 |
ひょっとして、LibreOfficeをご存じない方もいるかもしれないので、 ざっくり簡単に説明しておきますと、OpenOffice.orgから派生したフリーウェアーのオフィスソフトです。 詳しいことは、Wikipediaに載っていますので、確認してください。 個人的にはOpenOfficeより使い勝手が好みなので、自宅ではもっぱらLibreOfficeを使っています。 公式URLは、こちらです。 2016年5月末時点のLibreOfficeの最新バージョンは、5.1.3 となります。 ソフトの内容としては、MicrosoftOfficeとだいたい同じで、 文書(Writer==Word)、表計算(Calc==Excel)、プレゼンテーション(Impress==PowerPoint)、 が一通りパッケージされています。 あと、図形描画(Draw)、数式(Math)もありますが、これらはあまり使わないのでよくわかりません。 そして、今回解説する、データベース(Base)が梱包されています。 MicrosoftOfficeで言うところの、Accessに相当するソフトで、 これがフリーで使えるのは大変重宝します。 単体でデータベースを構築することもできますが、 私の場合は、Linux上で動作するPostgreSQLなどをLibreOfficeから接続して参照・更新を行っています。 では、今回はLibreOfficeを使ってPostgreSQLに接続する方法をご紹介します。 |
■LibreOfficeのダウンロード&インストール 上でリンクされている、公式URLから最新パッケージのダウンロード&インストールを行ってください。 ダウンロードファイルサイズは、約200MByte強ありますので、それなりに時間がかかります。 |
■LibreOfficeの起動 インストールが完了すると、デスクトップにLibreOfficeのショートカットが現れます。 このショートカットをダブルクリックで起動します。 下のような、LibreOffice起動初期画面が表示されます。 ![]() 今回の目的は、外部データベースに接続する事なので、 他の機能はほっといて、一番下の、「Baseデータベース」アイコンをクリックします。 |
■データベースウィザード データベースを作成するための「データベースウィザード」が表示されます。 1)データベースの選択 今回は、外部のデータベースに接続することが目的なので、 一番下の、「既存のデータベースに接続」をチェックして、 セレクトボックスの該当する物を選択します。 今回の場合は、外部のPostgreSQLに接続するため、これを選択します。 ![]() 設定が完了したら、「次へ>>」ボタンをクリックします。 |
2)接続設定 データベース接続情報を入力します。 ここの例では、DBのホストが、arimodoki.dip.jp DB名は、本編「■SpringMVC の小径 8-2)JDBC接続」で説明した jlabodb とします。 入力ボックスに「postgresql://arimodoki.dip.jp:5432/jlabodb」を入力。 もし、PostgreSQLのデフォルトポート5432をそのまま使っている場合はポート番号は省略可能です。 その場合は、「postgresql://arimodoki.dip.jp/jlabodb」となります。 もう一つの書き方としては、「dbname=jlabodb host=arimodoki.dip.jp」でも大丈夫です。 ![]() 設定が完了したら、「次へ>>」ボタンをクリックします。 |
3)ユーザー認証のセットアップ 接続するデータベースへのログインユーザー名を入力します。 本編「■SpringMVC の小径 8-2)JDBC接続」で説明した例では dbuser となります。 「パスワードを要求する」はチェックを入れてください。 (これをOFFにすると、接続テストで接続エラーになります) 「接続のテスト」を行ってみます。 ![]() 認証ダイアログが表示されるので、パスワードを入力します。 ![]() パスワードを入力して「OK」ボタンをクリックします。 問題なく接続できたら、「接続テスト終了」ダイアログが表示されます。 ![]() 「OK」ボタンをクリックしてダイアログを終了します。 「ユーザー認証のセットアップ」画面に戻ったら、「次へ>>」ボタンをクリックします。 ![]() |
4)保存して続行 下の画面の通りにチェックして、「完了」ボタンをクリックします。 ![]() 保存ダイアログが表示されるので、任意の場所に、任意の名前で保存します。 ![]() |
■データベース開始 DBの保存が完了すると、即座にデータベースウィンドウが開きます。 左ペイン「データベース」の「テーブル」を選択すると、下段に「テーブル」の一覧が表示されます。 このうち、infomation_schemaと、pg_catalog はPostgreSQLが管理する情報です。(ユーザには直接関係ない) 肝心なのは、public ツリー下に自分で作成したテーブルが格納されています。 ![]() infomation_schemaと、pg_catalog は必要ないので、フィルターで隠してしまいましょう。 「ツール」-「テーブルフィルター」を選択します ![]() |
■テーブルフィルター 画面に表示されたツリーの内、見せたくないリストのチェックボックスをOFFにします。 ![]() 決定したら、「OK」ボタンをクリックします。 あれ? フィルターしたはずのリストがまだ見えています。おかしいですね?? はい、このままではまだ見えています。 Baseを一旦終了して、再起動しましょう。これで不要なリストは見えなくなっているはずです。 |
■作業レイアウト 下が、フィルターしてすっきりしたレイアウトです。 自分で作成した、tbluser というテーブルだけが見えています。 ![]() tbluserをマウスでダブルクリックしてみましょう。 ![]() ダブルクリックされたテーブルが開いて、登録内容がリストされました。 カラムを選択すると、直接編集も可能です。 |
これ以外にも、クエリーとか、フォームとか、レポートといった MicrosoftAccessとほぼ同じ機能が備わっていますが それらの説明はここでは割愛します。 必要になったら、自分で勉強してください。 |
■※注意) やってはいけないこと! Baseでやってはいけないことを記しておきます。 ![]() 上の様に、「テーブル」ビューでテーブルを選択し、マウス右ボタンクリックで、メニューを表示させ、 「削除」を実行すると、Libre Base テーブルビューからテーブルが無くなります。 しかし、ビューから無くなっただけではなく、データベース本体からもテーブルが消滅してしまいます。 #drop table tablename; を実行したのと同じ状態です。 あな恐ろしや。 なんまいだぶぅ。 気を付けましょう。 |
その他諸々小技集 ![]() |
LibreOffice Base によるデータベース接続 |