頁:
[1]
想詢問SQL資料庫的問題
小弟在資料表的關聯種類 有不懂地方請大大解答我的A資料表中 有 客戶代號 客戶名稱 廠商代號(FK)
B資料表中有
廠商代號(FK) 廠商名稱
問題1:上面的關係 是不是所謂的一對一關聯
問題2:
那今天我在B資料表中 在多加欄位 廠商電話 廠商地址
這樣是不是就變成一對多的關聯
最近一直看很多對關聯的解釋 都還是沒辦法領悟 所以自己用個範例來尋求解答<div></div> 不太明白你的意思
如果table A內的key是Unique
table B使用的是table A的Unique key(也就是foreign key),那這就是1:1了
因為任一table A內的key只會指向任一table b內的一組資料 莫莫大大
B TABLE 如果要單一關聯 那您的PRIMARY KEY 設定FK 即可
反之 多設幾個 一個表有PK值 如你的CASE
A表的廠商代號(FK) 可以在B表找到兩筆以上 那就是1對多
反則1對1
問題2你只是新增欄位並不是新增資料 他們關係不變 本帖最後由 smallanan 於 2015-10-6 01:20 AM 編輯
你把他想得太複雜了
一對一、一對多
就是顧名思義,他在這個table的欄位裡,他是否是獨一無二的,是的話就是一,否就是多
舉個例子
學生資料表
學號 姓名
1 小陳
2 小李
分數資料表
序號 學號 科目 分數
1 1 國語 80
2 1 數學 65
3 2 國語 59
4 2 數學 90
學生資料表的學號為"唯一值"(即不會重複)即為一
分數資料表的學號不是唯一值 即為多
因此這就是一對多的資料表
應該是這樣說的,如有謬誤,請趕快導正我~
...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div><br><br><br><br><br><div></div> 感覺怪怪的
A資料表
客戶代號 客戶名稱 廠商代號(FK)
B資料表中有
廠商代號(FK) 廠商名稱
2個資料表本身感覺就有問題,請先大概述說你2個資料表的關係,為什麼客戶資料表會需要廠商代號(FK) ,因為是公司進貨到倉儲然後分發到店面最後在賣給客戶,照理說2者是不會有關系的
在一些案例中是不分廠商資料表跟客戶資料表的是會做成同一個資料表,因為兩者同為貿易關係,只是一個是買一個是賣
A資料表
廠商代號廠商名稱
AA 美商
AB 台商
AC 陸商
AD 日商
B資料表中有
商品代號 商品名稱
ZA 10吋螺絲
ZB 12吋螺絲
ZC 15吋螺絲
ZD 20吋螺絲
ZE 22吋螺絲
c資料表中有
交易代碼 商品代號 廠商代號
S1 ZA AA
S1 ZB AA
S2 ZA AB
S3 ZB AC
S3 ZC AC
一家公司有多項商品(螺絲),每項商品(螺絲)以規格區分,為了供貨穩定每項商品(螺絲)向多家廠商購買。
(臨時想出來的,資料表還是有許多問題)
...<div class='locked'><em>瀏覽完整內容,請先 <a href='member.php?mod=register'>註冊</a> 或 <a href='javascript:;' onclick="lsSubmit()">登入會員</a></em></div> A資料表 對應的 FK 廠商代號 因該是要對應 B資料表 廠商名稱
是一對多的關聯
不知道你的疑問是啥
主要要看你組 SQL 語法想撈出多筆的 廠商名稱 來說明一對多的設計
頁:
[1]