(現在 過去ログ1 を表示中)

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

[ 最新記事及び返信フォームをトピックトップへ ]

■88 / inTopicNo.1)  参照整合性について教えてください
  
□投稿者/ 葵 -(2005/08/26(Fri) 10:37:45)
    参照整合性について教えてください
    
    例えば IDを主キーとして受付.tbl、取引.TBLを参照整合させているのですが、
    地区を主キーとした担当者.tblを取引.TBLの地区項目を参照キーとして
    当てようとしたところエラーがでて設定できませんでした
    
    こういう場合 設定はできないのでしょうか?
    
    
    

404×254 => 250×157

1125020265.gif
/5KB
引用返信 [メール受信/OFF] 削除キー/
■89 / inTopicNo.2)  Re[1]: 参照整合性について教えてください
□投稿者/ しぼうかん -(2005/08/26(Fri) 12:46:20)
    葵さん、こんにちは.
    
    図では取引.tblに[ID]と[地区]の2つの主キーを設定する事が必要になります。
    一つの表に主キーを2つ設定する事は出来ないので無理じゃないかと思います。
    
    [地区]の意味がわからないのではっきりしませんが取引.tblにある[地区]と
    担当者.tblにある[地区]に参照整合性を設定しなければならない意味はなんでしょう?
    

引用返信 [メール受信/OFF] 削除キー/
■90 / inTopicNo.3)  Re[2]: 参照整合性について教えてください
□投稿者/ 葵 -(2005/08/26(Fri) 13:32:09)
    ■No89に返信(しぼうかんさんの記事)
    地区で担当者が決まっているので 図のように関連付けようと思ったのですが....
    
    実は 図にあった 取引.tblとその他のTBLを結合して結合表をつくっているのですが
    そこに担当者.TBLも結合させているのです
    すべての表の参照整合をとらないと 結合表で更新不可となってしまうので
    これをなんとかしたいと思って上記のことを考えたのですが.....
    
    他になにか方法があるのでしょうか....

引用返信 [メール受信/OFF] 削除キー/
■91 / inTopicNo.4)  Re[3]: 参照整合性について教えてください
□投稿者/ うにん -(2005/08/26(Fri) 13:47:21)
    > 地区で担当者が決まっているので 図のように関連付けようと思ったのですが....
    
    それなら担当者からコードを表引きしてコードを参照整合させるとか?
    地区に必ず単独の担当者がいるなら担当者.TBLで地区を主キーにすればよさそうな。
    
    > すべての表の参照整合をとらないと 結合表で更新不可となってしまうので
    > これをなんとかしたいと思って上記のことを考えたのですが.....
    
    これができるかはわかりませんが。
    

引用返信 [メール受信/OFF] 削除キー/
■94 / inTopicNo.5)  Re[3]: 参照整合性について教えてください
□投稿者/ しぼうかん -(2005/08/26(Fri) 17:29:57)
    質問1
    取引.tblは新たな取引が発生するたびに[ID]を付けてレコードが日々追加・更新されていく表だと
    推測していますが当たってますか?
    
    質問2
    もし質問1が当たっているなら[ID]="101"で[地区]が"東京"だった場合、[ID]が101以外、例えば[ID]="102"
    とかで[地区]が"東京"という事がありえると思うのですが、そういう事はありえないのですか?
    

引用返信 [メール受信/OFF] 削除キー/
■95 / inTopicNo.6)  Re[4]: 参照整合性について教えてください
□投稿者/ しぼうかん -(2005/08/26(Fri) 21:05:28)
    [ID]がユニークであるだけの例えば連番のような項目と推測してましたが、
    "TOKYO-0001"または"01-0001"となっていて最初の番号が01だと"東京"47だと"沖縄"
    という風に意味を持たせた[ID]なのかな?
    だとしたら確かに[ID]が決まれば自動的に[地区]も決まるけれど・・・

引用返信 [メール受信/OFF] 削除キー/
■96 / inTopicNo.7)  参照整合性の設定
□投稿者/ 佐田 守弘 -(2005/08/26(Fri) 22:08:44)
http://www.m-sada.com
    葵さん
    文面からは、参照整合性設定の意味を理解されていると思いますが、掲載されている図と
    主キーとの関連で確認させて下さい。そのあたりにヒントがあります。
    
    掲載図で取引.tblの[地区]から担当者.tblの[地区]に向かって参照整合性設定の矢印が
    引かれています。「本当にこの様に設定しようとされたのですか?」が、疑問点です。
    表の意味から、方向が反対ではないかと思います。
    
    つまり、担当者.tblの[地区]は、ユニークな値、つまり複数の担当者が同じ地区を担当する
    事があり得ないのであれば、この項目値はユニーク(唯一=値が重複しない)になり、担当者.tbl
    の[地区]に主キー設定をします。そして取引.tblは外部キーになります。
    (本当にユニークな値になるかは、私には信じられないのですが)
    値が重複しない事の担保として、重複禁止の索引を設定しておくとよいでしょう。
    
    なお、主キーは表に対して1つのみ設定できる他、値が重複する可能性がある項目には
    主キーの設定はできません。
    取引.tblは、同じ地区に複数の取引が発生するはずなので、元々これを主キーに設定する事は
    不可能です。
    
    以上の通りの主キー設定が行ってあれば、1対n関係の参照整合性が設定できるはずです。
    

引用返信 [メール受信/OFF] 削除キー/
■97 / inTopicNo.8)  Re[1]: 参照整合性の設定
□投稿者/ アックン -(2005/08/27(Sat) 10:47:19)
    葵さん、こんにちは。
    外部キーの表には、主キーが必要です。
    こんなふうに設定してみては。
    
    VIW定義画面
    取引.tbl
    主キー:ID
    商品
    数量                         担当者.tbl
    外部キー:担当者コード n---1 主キー:担当者コード
                                 氏名                       地区.tbl
                            -    外部キー:地区コード n---1 主キー:地区コード
                                地区
    
    表示項目名    所属対象表   項目
    ID              取引.tbl        主キー:ID
    数量            取引.tbl
    商品            取引.tbl
    担当者コード    取引.tbl    外部キー:担当者コード
    氏名            担当者.tbl
    地区コード      担当者.tbl      外部キー:地区コード
    地区            地区.tbl
    
    取引.tbl [担当者コード]の「参照整合性定義」画面左下の、
    「参照項目入力時に表引き表として利用する」にチェックを入れておきます。
    
    次回アクセスは月曜午後の予定です。 アックン(=^・^=)

引用返信 [メール受信/OFF] 削除キー/
■108 / inTopicNo.9)  Re[4]: 参照整合性の設定
□投稿者/ 葵 -(2005/08/29(Mon) 12:49:40)
    担当者とありますが実際には担当部課に近いです
    地区によって担当する部課が決まっているのですが 極まれにそれ以外のところが担当することがあります
    なので 取引.tblから 担当者.tblに矢印を引いてしまいました
    
    再度見直してやってみます
    

引用返信 [メール受信/OFF] 削除キー/



トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

Mode/  Pass/

HOME HELP 新規作成 新着記事 トピック表示 ファイル一覧 検索 過去ログ

- Child Tree -
- Antispam Version -