質問する
0

現在でも Base のテーブル編集時に行の挿入はできない?

質問日 2017-07-28 08:47:24 +0200

AEZ のGravatar画像

updated 2018-12-19 11:11:22 +0200

nogajun のGravatar画像

LibreOffice Base で、ローカル PC 上に、デフォルトのデータベースシステム (HSQLDB) で、データベースを構築中です。

  • ローカル PC: Windows10 機
  • LibreOffice Base: バージョン 5.3.4.2 (現時点での最新の安定版)

テーブルを編集中に、すでに設定がある 2 つの行の間に新しい行を挿入するため、[ 右クリック → 行の挿入 ] をしたところ、選択している行の次の行にではなく、すでに設定がある行のうち一番下の行の次の行に、行が挿入されてしまいます。

この件についてネットを検索したところ、OpenOffice.org の Q&A サイトに、下記のような記述がありました。しかし、2006 年の記事ですからかなり昔です。

  1. ページ概要: 2006-05-18 投稿 「フィールドを並べ替えられない?」 (http://oooug.jp/faq/index.php?faq%2F3%2F12)
  2. 回答要旨: 「HSQLDB ではできない。なぜなら、OOo の開発陣のコメントにあるように、「ほとんどのデータベースが2つの異なるフィールド間の挿入を許可しない」から。代わりの方法として、新規にテーブルを作成し、それにフィールドを一つ一つコピー&ペーストするという方法がある」

もしそうだとすれば、データベースの作成者は、テーブル編集時に、行の挿入が必要になるたびに新しいテーブルを作ってリレーション関係を設定し直すか、あるいは、後々行の挿入が必要になることを考慮して、初めから行を飛び飛びに (昔 BASIC でコーディングする時に行番号を 10 刻みで書いていったような原理で) 作っていくかの、いずれかしかないということになります。

しかし、上記 Q&A の日付は 10 年以上前ですので、現在ではもっと良い方法が組み込まれているかもしれません。

そこで質問ですが、LibreOffice Base では、現在も、この「テーブル編集時に行の挿入ができない」という仕様を、上記のような「裏技」を使うことなしに、回避することはできないのでしょうか?

どうかよろしくお願いいたします。

edit retag flag offensive close merge delete

Comments

  • ローカル PC: Windows7 機
  • LibreOffice Base: バージョン 6.0.7.3 (現時点での最新の安定版)

    です。
    すみません。回答ではありません。感謝のコメントです。

    同じ疑問を抱えて検索してたら、この質問に出会いました。
    無理だということが理解できました。
    答えを求めて、これ以上検索するという無駄な時間を使わずにすみます。
    ありがとうございました。

    フォーム側の配置で処理すれば良いのでしょうが、
    設備ごとの全部品一覧とか、項目の多いテーブルを作成せざるを得ないときには不便ですね。

amada のGravatar画像amada ( 2018-12-06 03:42:13 +0200 )edit

1 Answer

0

回答日 2018-12-07 00:02:30 +0200

PullNan のGravatar画像

LibreBaseも見てみたのですが、マイクロソフトAccessのとき、住所、氏名、電話番号・・・というフィールドを作成し入力後・・・「あ、ふりがな忘れた」で後からフィールドを作成できないので、転記クエリーを作りました。

とても、とても面倒なんで空白のフィールドを作りました。

住所、氏名、生年月日、備考、ふりがな・・・・

表示でツールバーの、フォームデザインをクリックし、そのツールバーからデザインモードをクリック。 該当するコントロール(例えばテキストボックス)を右クリック、「コントロール」をクリックすると、フィールド用コントロールのプロパティーが設定できます。(LibreOffice6.1.3.2)

その項目で、有効にする(Enable)を「はい」から「無効」にすると、存在はするが表示しない。になります。

さらに、「タブの順序」をクリック。実際は12番めフィールドでも、3番めにタブ順を変更できるのは、マイクロソフトアクセスと同じです。

要は、実際のデータの並び順と、入力順を変更出来ます。

データ入力前なら、この手で入力順を変えられフィールドの一番うしろに新しいフィールドを追加できます。 入力したあとで、フィールドを追加するのは面倒でした。

入力後、行の挿入は出来ない方向で考えて居ます。

edit flag offensive delete link もっと

Comments

と、LibreOfficeのBASEで、レコードを作成。1件、2件データを入れて、その後テーブルにレコードを追加・・・出来てしまった。Formを修正してみる。

PullNan のGravatar画像PullNan ( 2018-12-08 04:03:56 +0200 )edit

1) レコード作成、フォームでデータを2つ入れる。

2) 1フィールド追加、データを追記するものの、追加したフィールドは出てない(当たり前)

3) 第2レコードに、追加したフィールドのデータを表示させるが、空白のまま。

4) 空白のフィールドにデータを入れてみる。

テーブルでレコードを表示してみる。

居る。

順番は、タブストップで変える。

PullNan のGravatar画像PullNan ( 2018-12-08 04:43:41 +0200 )edit

編集で、フォームデザインというところがあり、そこに「タブストップ」というアイコンがあります、(Ver6.1)

変更し、保存。入力モードで適応を確認しました。

PullNan のGravatar画像PullNan ( 2018-12-08 05:19:58 +0200 )edit
ログイン/サインアップして回答する

質問ツール

1 follower

Stats

Asked: 2017-07-28 08:47:24 +0200

Seen: 1,070 times

Last updated: Dec 07 '18