Baseは無料で使える高機能のデータベースソフトですが、
クエリーの特徴を知らないと、はまってしまうので、要注意です。
BaseでもAccessでも、単純なクエリ程度なら、
クエリーを通じて、テーブルへのレコードの追加、修正、削除が行える点は同じです。
さらにAccessでは、ちょっと複雑な結合クエリでも、
レコードの追加、修正、削除が行えます。
Accessのユーザーなら、当然だと思える機能ですよね。
例えば、売上伝票の明細と商品テーブルを結合して、
明細に商品名や単価などを表示させることはよくあります。
Baseでも表示だけなら可能です。問題ありません。
ところが、新規データの追加や修正、削除ができないのです。
これはBaseで結合クエリの結果を表示したものです。
新規でレコードを作成するボタンが使えないことがわかります。
またレコードの修正や削除もできません。
2015年12月現在、Apache OpenOffice 4.1.2 が最新版としてダウンロードできますが、
現時点で、Baseの結合クエリでは、追加、修正、削除が行えないようです。
今後の改善に期待するしかありませんね。
Accessを使い慣れている私も、
最初は「何で?」と戸惑いました。
Accessで簡単にできることが、出来ないのですから。
解決策としては、いろいろ試行錯誤した結果、
データを入力するためのクエリーと、表示を行うためのクエリーを分けることで、何とか対応できました。
この2つのクエリーを基に、
フォームを作る時に、サブフォームを、入力用と表示用に分けるわけです。
今のところは、なんとか工夫することで可能ではあります。
フォームがちょっと不格好になりますが、
データを入力する目的を果たすという意味で、機能的には大丈夫です。