• ベストアンサー

アクセス2000でクエリにデータ追加ができる表示がでません

アクセス2000で、氏名と性別コード(1or2)のあるテーブルを作りました。 性別を漢字で表示したいので、1=男、2=女というべつのテーブルを作って リレーションシップを設定しようとして、氏名と性別コードのあるテーブルを もとにクエリを作成して、1=男、2=女というテーブルを表示したところ、 クエリにデータ追加ができる表示がでなくなりました。 また、そのクエリをもとに、フォームを作ったら、性別コードの部分が「この データは更新できません」というようなメッセージが出て、データの修正も、 できません。 どうしてでしょう? どうしたら、解決するでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
noname#832
noname#832
回答No.3

私も最初、この問題で困惑した覚えがあります。 元の"性別コード"テーブルで主キーの設定をしないとこの様な状況が発生します。 "性別コード"(テーブル)の性別コードを主キー設定してみてください。 主キーを設定しないでテーブルを保存しようとすると"リレーション設定が出来ません"等のメッセージが出ます。 私は97を使用していますが2000も同じだと思いますので、一度試してみて下さい。

ariga
質問者

お礼

いや~ぁ。まったく、その通りでした。おかげさまで、すっきり解消しました。ありがとうございました。

すると、全ての回答が全文表示されます。

その他の回答 (3)

  • yuziro
  • ベストアンサー率41% (5/12)
回答No.4

あ、なるほど、主キーを設定していなかったのね。 tamsonさんの回答が正解のようですね。 ワタシの回答は、無視してください(^^ゞ

ariga
質問者

お礼

いろいろと、ありがとうございます。確かに主キーが設定されていなかったことが、原因でした。yuziroさんのご意見もたいへん参考になりました。

すると、全ての回答が全文表示されます。
  • yuziro
  • ベストアンサー率41% (5/12)
回答No.2

個人情報テーブル 個人コード:氏名:性別コード 1:山田太郎:1 2:山田花子:2 3:田中一郎:1 性別テーブル 性別コード:性別名称 1:男 2:女 デザインビューで新規クエリを作成し、 個人情報テーブルと性別テーブルを追加。 性別テーブルの性別コードをドラッグして、 個人情報テーブルの性別コードの上にポンと落とす。 個人情報テーブルのフィールド、 [個人コード][氏名][性別コード]と、 性別テーブルのフィールド、 [性別名称]を表示するように設定する。 これで出来ますよ。 arigaさんのやり方と、 どこが違っているのかは、 よくわかりませんが・・・

すると、全ての回答が全文表示されます。
  • selenity
  • ベストアンサー率41% (324/772)
回答No.1

一体何をしたいのでしょうか? ・表示専用画面 ・表示 兼 編集画面 話の流れからすると後者のようですね。 だとすると、編集画面のレコードソースには クエリーを使う必要はありませんね。 「氏名と性別コード(1or2)のあるテーブル」で十分です。 では、性別のところをどうするかというと、 そこがAccessの楽なところなのです。 まず、性別表示用の「コンボボックス」を準備し、 集合値ソースをテーブル/クエリーを選択し、 1=男、2=女というテーブルを指定します。 表示に関しては最初のカラムの教示幅を0cm;とし、 連結列を1列目を指定します。 さらに、このコンボボックスのコントロールソースを 「氏名と性別コード(1or2)のあるテーブル」の性別 フィールドを指定すれば完了です。

すると、全ての回答が全文表示されます。

関連するQ&A