0
我想知道我對代理鍵的理解是否正確。需要高級幫助來驗證我對關係數據庫設計中關於代理鍵的理解
E.g:
下面是我的示例數據庫設計
Customers Table
| id(PK) | Name | Age |
| 1 | John | 34 |
| 2 | Doe | 30 |
QrCodes Table
| id(PK) | QRcode | Tracking No. | CustomerID (FK)
| 1 | QR123 | TR901111 | 1
| 2 | QR345 | TR902222 | 2
Redemptions Table
| id(PK) | Name | Tracking No. | CustomerID(FK)
| 1 | Redemption 1 | TR901111 | 1
| 2 | Redemption 2 | TR902222 | 2
| 3 | Rdemption 3 | TR902222 | 2
正如你所看到的,我有兩個跟蹤號列,一個用於qrcodes表&一個贖回表。因此,我可以通過追蹤找到所有Qrcodes &贖回的查詢。
跟蹤編號欄可以分類爲代理鍵嗎?或者那是不正確的?
否。假設跟蹤號碼是唯一且永久的,那麼在QrCodes表中id列是代理,而跟蹤編號是。是一個獨特的[自然]鍵 – Strawberry
我不明白這一點先生。這是否意味着QrCodes表中的id列不可見/正在系統中使用? –
外鍵總是應該引用主鍵 – Strawberry