- ベストアンサー
Access97の不具合(?)
こんにちは。いつもお世話になってます。 現在Access97を使って、顧客のデータベースを作ってます。 新しい顧客のデータをテーブルに入力して、クエリーに表示させたところ、新しい顧客だけが呼び出されません。 クエリーの条件にその新しい顧客はひっかかっていないので、表示されなければならないのですが、なにか原因があるのでしょうか? なにぶん、詳しくないので、この説明でいいのかもわかりませんが、よろしくお願いします。
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
おはようございます。 状況から見ると抽出条件のせいではないようですね。 3つのテーブルでそれぞれフィールドを結合線で結んでいるはずですが、そのフィールドの各データを確認してみてください。 いずれかでデータが一致しない状態になっていると思います。 1.両方とも入力されているが値が不一致 2.片方のテーブルのフィールドに値がない(null) (表示されるデータと表示されないデータを見比べれば分かるはず) LEFT JOIN 又は RIGHT JOIN にすれば表示されると思いますが、そうすることが良いか必ずデータを入れるようにするかは場合によって色々ですので今までの情報だけでは判断できません。 以下Accessのヘルプより。 たとえば、[部署] テーブルと [社員] テーブルで INNER JOIN 操作を行うと、各部署に所属する社員全員を選択できます。これに対して、所属する社員が 1 人もいない部署も含めたすべての部署を選択したり、どの部署にも所属していない社員も含めた社員全員を選択するには、LEFT JOIN、RIGHT JOIN 操作を使用して外部結合を作成します。
その他の回答 (3)
- o23
- ベストアンサー率36% (64/175)
抽出条件はひとつ(一箇所)ですか? その抽出条件をなくすと全てのデータが表示されますか? クエリーをSQLビューにして、内容を補足で表示してもらえば何か分かるかもしれません。
補足
抽出条件は2つあります。 全部なくして表示させましたが、その中にも表示されませんでした。 クエリーをSQLにしてみましたが、内容が外へ漏れるとまずいものなので、ここに表示することができません。 頭はSELECT DISTINCTROWではじまり、各テーブル(呼び出すテーブルは3つ)のカラムが呼び出されています。fromのところは、inner joinという命令文が入ってます。 こんなのでわかりますか? 情報が少なくてすみません。
- bin-chan
- ベストアンサー率33% (1403/4213)
> 表示しなくてもよいものを除いて表示するという条件なので この条件を外すと表示されますか? 条件の見落としがあるような気がします。
補足
お返事ありがとうございます。 条件をはずしても表示されませんでした。 何か他に原因があるのでしょうか?
- himura
- ベストアンサー率20% (11/55)
>クエリーの条件にその新しい顧客はひっかかっていないので、表示されなければならないのですが クエリーの条件にひっかかっていなければ、表示はされないのでは?
補足
説明が不足してました。 この新規の顧客データが、表示されないようにする条件はひっかかっていませんので、ひょうじされなくてはいけないのです…。 表示しなくてもよいものを除いて表示するという条件なので、ひっかかると表示されません。
お礼
#4さんの場をお借りして、皆様にお礼を申し上げます。ありがとうございました。 #4さんのおっしゃるように、テーブルのひとつに値がないものがありました。 値を入れるときちんと表示することができました。 初歩的なミスだったようで、皆様のお手を煩わせてしまって、申し訳ございませんでした。 今後ともよろしくお願いします。