Ubuntu、PostgreSQL、LibreOfficeを使用しLibreOffice BaseからPostgreSQLに接続する手順を以下に記します。
他の環境を使用する方は、以下の各種情報を読み替えて使用してください。
各種使用したソフトウェア等を以下に記します。
OS | Ubuntu 12.04, Windows7 |
LibreOffice | LibreOffice4.1 Windows版 |
PostgreSQL | 9.1 (Ubuntuで稼働) |
Ubuntu上にPostgreSQLをインストールしデータベース作成およびテーブルを作成した手順を以下に記します。
sudo apt-get install postgresql-9.1
sakura@ubuntu:~$ sudo -i -u postgres [sudo] password for sakura: postgres@ubuntu:~$ vi /etc/postgresql/9.1/main/postgresql.conf
#listen_addresses = 'localhost' # what IP address(es) to listen on;
listen_addresses = '*' # what IP address(es) to listen on;
postgres@ubuntu:~$ vi /etc/postgresql/9.1/main/pg_hba.conf
host all all 192.168.56.1/24 trust
postgres@ubuntu:~$ /etc/init.d/postgresql restart * Restarting PostgreSQL 9.1 database server [ OK ]
以上でPostgreSQLの設定は完了です。
上記のpostgresユーザのままで以下のコマンドでデータベースとテーブルを作成しました。
注意点としては、テーブル作成時にかならずプライマリキーを指定してください。
プライマリキーを指定しないと、Baseによるテーブルのレコード内容の修正ができなくリードオンリーになります。
(プライマリキーがないので編集できませんよね。確かではないですが以前ODBC接続の場合はOID?を使用してできたように気がします…)
postgres@ubuntu:~$ createdb testdb postgres@ubuntu:~$ psql testdb -c "create table t1 (a int primary key, b int, c int);" NOTICE: CREATE TABLE / PRIMARY KEY will create implicit index "t1_pkey" for table "t1" CREATE TABLE
データも一件INSERTしておきます。
postgres@ubuntu:~$ psql testdb -c "insert into t1 values (1, 1, 1);" INSERT 0 1
以下の手順でLibreOffice Base(Windows7で稼働)からUbuntu上のPostgreSQLに接続しました。
dbname=データベース名 host=ホスト名今回この資料では、以下のような環境になっています。
dbname | host |
testdb | 192.168.56.12 |
あとは、データを入力したり削除したりテーブルのデザインができるようになります。
以上、LibreOffice BaseからPostgreSQLに接続する方法でした。