* テーブルのデータ変更不可状態 [#o2deb593]
 |RIGHT:|LEFT:|c
 |~ページ|[[OpenOffice.org FAQの登録ページ]]|
 |~投稿者|shin|
 |~分類|#listbox3(Q&A,faq03,class)|
 |~優先順位|#listbox3(普通,faq03,priority)|
 |~状態|#listbox3(完了,faq03,state)|
 |~カテゴリー|#listbox3(Base データベース,faq03,category)|
 |~投稿日|2006-11-21 21:14:34 (火)|
 |~OS|WinXPsp2|
 |~依存するページ||
 |~バージョン|#listbox3(2.0,faq03,version)|
 
 //////////バグ対策(以降マッチさせない)
 
 ** メッセージ [#t1bd1284]
 |LEFT:|c
 |回答ページでは行末に「~」を付加する必要はありません|
 メモリ256MBのノートでBaseを使い始めました。作成したあるテーブルのデータを修正することができません。小さなサイズのテーブルはそのようなことは無いのですが、一番大きいマスターのテーブルが機能しません。なにかメモリとの関係かな?と思いますが、初心者でよくわかりません。アドバイスお願いします。
 
 ----
 ***もう少々情報をお願いします [#ec4cbed8]
 >M.Kamataki (2006-11-21 23:35:51 (火))~
 ~
 確かにOSのシステム要件もあるでしょうから、256Mというのは少ないかもしれません。~
 ~
 ただ、書かれた内容からは判断できません。テーブルについて「大きい」「小さい」という表現も曖昧です。せめてテーブルに設定したフィールドの数、登録ずみのレコード数などは書きましょう。~
 ~
 ところで「一番大きいマスターのテーブル」というのは、最初はデータを入力できたいたのが、途中方入力できなくなったということでしょうか。~
 
 //
 ***ありがとうございます。もうすこし説明します。 [#e075fbee]
 >shin (2006-11-22 06:11:35 (水))~
 ~
 名簿を作成しました。フィールド数はキーを含めて整数が2、テキストが5、日付が1です。最初にテーブル上でデータを90件ほど入れて、その後フォームを作ってデータを追加しました。同時に新たにメインのフィールドの整数値とリレーションの関係にあるテーブル(これは8つのレコードのみ)をつくり、また名簿の項目をひとつ追加する形でキーとリレーションのテーブルを作成しました。いくつかの並べ替えクエリーもつくりました。現在127件のデータがあります。~
 ところがあるときデータを修正しようとテーブルを開いたところ、セルをクリックしても青く反転せず、セルの周りが点線表示になるのみです。右クリックするとコピーのみが可能です。またデータ追加もできません。フォームも同様です。~
 後から作った二つのテーブルは、開いて編集可能です。~
 ~
 以上のような経緯なのですが、なにか他に調べてみることなどあるでしょうか。よろしくご教示ください。~
 
 //
 ***訂正 [#f4f88385]
 >shin (2006-11-22 06:36:49 (水))~
 ~
 1行目「キー」とあるのは「プライマリキー」のことです。失礼しました。~
 
 //
 ***メモリは関係なさそうですね [#cb8aba41]
 >M.Kamataki (2006-11-22 14:01:26 (水))~
 ~
 「プライマリキーに設定したフィールドの破損?」(faq/4/84)と関連するかもしれないのですが、テーブルの定義は変更されましたか。「名簿の項目をひとつ追加する形で」という記述はそういうことでしょうか。~
 ~
 もし、テーブルに後からフィールドを追加されたということなら、追加フィールドを含めた新規のテーブルを用意し、右クリックメニューでコピー、さらに貼り付けて新規のテーブルにデータをコピーしてください。データのコピーは下図のような「テーブルのコピー」ダイアログで設定できます。この新規のテーブルならデータの更新などができるはずです。データだけを移行する場合は、テーブル名欄に移行したい先のテーブル名、オプション欄で「データの添付」を選んでください。~
 ~
 #ref(http://oooug.jp/faq/index.php?plugin=ref&page=faq%2F4%2F86&src=faq4_86_01.png,nolink)~
 
 //
 ***To:M.Kamataki様 解ってきたこと [#t6e5bde7]
 >shin (2006-11-24 00:19:47 (金))~
 ~
 ご教示ありがとうございます。~
 あれから、自分のバックアップファイルを調べたら、まだ破損するまえのファイルが残っていました(不具合の原因はファイルの破損でした)。それを良く見ると、メインのテーブルとプライマリキーでリレーションの関係にあるテーブルに、メインのテーブルと同じ名前のフィールドを作ったため、フォームやテーブルからあれこれとデータを登録した際、矛盾するデータが残っていました。二つのテーブルの同じ名前のフィールドに、違うデータが格納されている状態になっていたわけです。これが本当に不具合の原因かどうかわかりませんが、ご指摘の修復方法と同じような考え方ということですよね?~
 ともあれ、そのあたりの矛盾を解消して、その後問題はありません。~
 なお、ひとつ教えていただきたいのですが、「テーブルのコピー」というダイアログはどのような手順で呼び出すのですか?~
 よろしくお願いします。~
 
 //
 ***テーブルのコピー [#o8e1a6c9]
 >M.Kamataki (2006-11-24 11:21:42 (金))~
 ~
 >メインのテーブルと同じ名前のフィールドを作ったため~
 確かにこれが原因っぽいです。~
 ~
 >「テーブルのコピー」というダイアログはどのような手順で呼び出すのですか?~
 昨日、過去のイベントのために作成した資料を公開しました。その中に参考になるものがあります。~
 ~
 「BaseSeminar」~
 http://openoffice-docj.sourceforge.jp/wiki/index.php/Documentation/Base_Seminar~
 の「OpenOffice.orgで体験!OSS DB御三家」の8ページ目「Baseのテーブルコンバート」をご覧ください。異なるDB間でのコンバートを前提にしているので、手順の(3)は読み飛ばしてください。~
 ~
 なお、当OOoQ&Aにも「Baseでのテーブルコンバートと蔵書管理データベースの設定」(faq/1/28)にて画像付きで紹介しています。ちょっとごちゃごちゃしてますが、こちらの「テーブルのコンバート方法」も参考にしてください。~
 ~
 当初の問題は解決されたようなので、当ページは完了にします。~
 
 //
 #article