こんなデータベースを作成しています。
データとしては、社員番号、氏名、端末番号の3種類で、1つ目の
テーブルには社員番号(キー)と氏名、もうひとつのテーブルには
端末番号(キー)と社員番号があり、社員番号間でリレーション
シップを作成しています。なぜひとつのテーブルにしないかと
いいますと、以下の希望があるからです。
・社員番号は重複不可
・端末番号も重複不可
・ただし、端末番号は、使用していない番号もある。
(つまり、最後に端末番号順のレポートとして出力する際に、使用
していない端末番号があっても、それは使用者「なし」として
出力したいということです。)
ということで、2つ目のテーブルには、端末番号のみのレコードが
多数あります。この状態で、クエリにて社員番号、氏名、端末番号の
ものをつくり、ある社員の端末番号を変更しようとすると、エラーが
出てしまうのです。おそらく、空きの番号は2つ目のテーブルにて
社員番号「なし」で登録されているので、それと重複という扱いに
なっているのだと思います。私の考えだと、そこで自動的に端末番号の
テーブルの方も書き換えが起こると考えていたのですが・・・
アドバイスをお願いします。
この文ではよくわからない点もあるとは思いますので、補足もしたいと
思っています。
No.2ベストアンサー
- 回答日時:
表題と質問内容があっていませんね
表題を無視して回答します
ご質問の内容から推理すると
社員の端末使用状況を管理したいとうことのようですね
この場合社員と端末とは多対多の関係にあると思われますから
テーブルが2つでは不足です
テーブルは以下の3つになります
[社員マスタ](社員番号、氏名、・・・)
[端末マスタ](端末番号、端末名、・・・)
[使用状況](社員番号、端末番号)
多対多についてはヘルプで研究してください
この回答への補足
ありがとうございます。
悪戦苦闘しております。
テストとして、教えていただいた通りにテーブルを作って、リレーション
シップを設定してみました。で、クエリを作ってみたのですが、社員
コード順のもの(社員コード、氏名、端末名、・・・)はできたのですが、
全端末番号の一覧(端末番号、社員コード、氏名、・・・)を作ろうと
すると、エラーが出てしまいます。(あいまいな外部結合が含まれて
いるので・・・)というものです。
実は、表題の内容はここに絡んできていまして、空いている番号も
一覧として出したいのです。ただ、リレーションシップを設定する際に
「端末マスタ」の全レコードと「使用状況」の対応するレコードとの
結合にすると、上記のエラーが出てしまいます。お互いの一致する
レコードのみ結合とするとエラーは出ませんが、使用していない端末は
表示されなくなってしまいます。
状況が伝わりましたでしょうか??
No.5
- 回答日時:
>クエリのデザイン画面で設定する関連付けと、リレーションシップの
>画面で設定する関連付けは異なる種類のものということですか??
そうです
Accessは初心者用のDB。SQLを覚えなくてもデータベースができる
というあたりが売りで、本来ならSQLで記述しなければならない
クエリがクエリデザインビューで(全てのクエリには対応していませんが)
テーブルの定義がテーブルデザインビューで出来るようになっています
テーブルの方はデザインビューだけでは定義できないテーブルの関係
をリレーションシップウィンドウでの定義で補っています
ややこしいのはここからで
初心者に優しいDBの続きなんでしょうが
クエリでのテーブル結合の際に(本来は関係ない)
リレーションシップで定義した結合を結合候補として表示したりする
サービスをしてくれるところです
(このサービスのおかげで両者を同じと誤解する初心者が出てくるのでしょうね)
No.4
- 回答日時:
誤解があるようですよ
リレーションシップはテーブル間の(参照)関係を設定するものです
SQLで言えばCONSTRAIN句の設定です
クエリの結合はどのフィールド同士をどのように結びつけるかを設定します
SQLで言えば、JOIN句の設定です
2つにはよく似ていますが別の物です
この回答への補足
う~ん・・・ また混乱してきました。
クエリのデザイン画面で設定する関連付けと、リレーションシップの
画面で設定する関連付けは異なる種類のものということですか??
No.1
- 回答日時:
入力はどのようにするのでしょうか?
もし、フォームとかから入力するのならば
重複不可のためにテーブルを分ける必要はないかと。
入力checkの時に重複もついでに調べれば良いので。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- iCloud iPhone端末変更時のLINE引継ぎ 4 2023/07/09 15:07
- 確定申告 確定申告自体が初めてのE-TAXについて 4 2023/02/12 19:32
- Y!mobile(ワイモバイル) スマホ端末を実質ゼロ円 とにかく安く買いたいです そして解約したらダメですか? 2 2022/06/06 20:45
- LINE 【LINE】海外製端末に日本端末の電話番号を入力し、引き継ぎ(番号変更)をすることは可能ですか 6 2022/08/21 12:01
- Android(アンドロイド) 電話番号が変わったら クレジット番号とか 色々なサイトや場所で登録しているので 不便になる 3 2022/06/12 05:47
- Oracle sqlで質問です。 Aテーブルの登録番号をキーにBテーブルから確認番号を取得したいのですが、Bテーブ 4 2023/05/18 13:08
- LINE 電話番号を新しく作ったのでLINEを作ったのですが、打ち込んでみると おかえりなさい!〇〇と知らない 1 2022/03/31 13:30
- Android(アンドロイド) LINEの新規登録の方法がわからない! 4 2022/07/08 22:33
- ポイントサービス・マイル E-TAXについて 2 2023/02/12 16:18
- その他(スマホアプリ・スマホゲーム) GPSアプリのゼンリー(Zenly)を登録しようとしたら自分の別の端末の番号が表示されて原因不明 1 2022/07/24 00:31
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access レポート印刷するときに...
-
access2021 レコード移動を防ぐ
-
Access runtimeでのオプション...
-
【Access】Dcount関数の複数条...
-
access2021 強制終了してしまう
-
Accessのスプレッドシートエク...
-
Microsoft365にAccessってあり...
-
Accessのクエリで、replace関数...
-
実行時エラー3131 FROM 句の構...
-
Vba Userformを前面に出すについて
-
CSVファイルの「0落ち」にVBA
-
Access で半角スペースと全角ス...
-
ACCESS VBA でのエラー解決の根...
-
チェックボックスにチェックが...
-
accessでlaccdbファイルが削除...
-
Accessのリンクテーブルのパス...
-
access2021 メッセージボックス...
-
Access VBA [リモートサーバー...
-
accessのフォームに設置したボ...
-
アクセスの更新クエリでカレン...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ワイモバイル機種変更について ...
-
携帯端末情報を変えたい
-
SIMとMNP番号の関係
-
F881iES(らくらくホン)着信不...
-
Accessで、レポートに連番を振...
-
携帯電話の番号変更
-
こんにちは ワイモバイルシムフ...
-
au携帯からblackberryへアドレ...
-
イマドコかんたんサーチをau端...
-
カレンダーでの箱作りついて。 ...
-
未成年でも購入できますか?
-
春から大学生になります。その...
-
android4 4.2root化 lenovo YOG...
-
iPhoneって次いつ新しいのが発...
-
iPhone4はまだ“使える”機種です...
-
強制解約後の携帯電話
-
iPhone5sをワイモバイルのSIMで...
-
SIMフリーiPhone5の香港版は日...
-
iPhoneとiPodtouchの違い。 屋...
-
紀伊国屋書店梅田について
おすすめ情報