Soft_Job 板


LINE

想問問假使我有一個網路商城 使用者甲有可能會在A商店 買了 兩個羽球拍 一顆籃球 使用者乙有可能在A商店 買了 三雙球鞋 那麼我的訂單資料庫設計欄位 是應該要每個商品都要佔據一個列會比較適合嗎 訂單編號 商品名稱 店家名稱 商品數量 A1 羽球拍 A 2 A1 籃球 A 1 A2 球鞋 A 3 我的理解是使用者甲雖然買了兩樣東西,但是這是同一筆訂單,所以訂單編號要相同 我都假設成A1這樣 可是這樣設計的話,萬一使用者甲一次買十樣商品, 那我的資料庫不就要有十列來存 想問這有更好的設計方式嗎? 另外想問另外一個問題是 如果是一般的註冊使用者帳號密碼的表單傳到後端,我知道後端 可以用name來接收 但是如果是購物車 要怎麼樣把使用者 打勾的 羽球拍 籃球 都用json傳到後端 畢竟不同商店都有不同的產品清單 這方面我也不可能去把每一個商店的購物畫面都刻一遍 問題應該很基礎 希望可以得到一些hint 事情有google過 add multiple product into shopping cart 等關鍵字,但好像效果不彰qq --



※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 219.91.22.53 (臺灣)
※ 文章網址: https://webptt.com/m.aspx?n=bbs/Soft_Job/M.1623612131.A.33C.html
1F:→ kkkoooiii2: 1. 看你後續資料使用情境 沒有最好, 只有最適合06/14 04:53
2F:→ kkkoooiii2: 2. A商店的羽球拍和B商店的羽球拍 是同一個羽球拍嗎06/14 04:53
不一樣,所以我想表格欄位應該從商品名稱改成商品編號,然後店家名稱應該可以刪掉 只是我這樣是不是要新增一個欄位是訂單的主鍵 因為訂單編號會重複,但主鍵不會 訂單的主鍵如果叫id 可能是 1,2,3,4,5,6,7 只是這個主鍵看起來沒有訂單編號有用?
3F:→ Kitten1156: 1.傳統來說確實十筆沒錯,不然就是做其他設計,一個表06/14 05:59
4F:→ Kitten1156: 存key,另一個表做對應06/14 05:59
存key 也是一種商品存一個列嗎?不然看起來好像也是買十樣存十列?
5F:→ Kitten1156: 2.每個產品都要有key,傳key進後端做區別06/14 05:59
6F:→ siriusu: 訂單 跟 店家 可以再進一步正規化 不過這跟本版有關嗎06/14 06:07
7F:→ MonyemLi: 這是歷史資料,買了就不可該,最好不要用關聯,因為商06/14 07:52
8F:→ MonyemLi: 品可以不斷改06/14 07:52
9F:推 somefatguy: 待過一個案子是把不需要用來搜的欄位存格式化字串06/14 08:04
10F:→ somefatguy: 如 訂單:A1 data:"A,羽球拍,2,A籃球,1"06/14 08:06
11F:→ somefatguy: 不過各種方法有好壞,像這樣就是改個資料要字串全覆寫06/14 08:07
12F:→ somefatguy: 而且統計時要撈資料需要用的資料在字串內很難撈06/14 08:08
13F:→ somefatguy: 訂正:A籃球,1=>A,籃球,106/14 08:09
14F:→ bheegrl: Order<->OrderDetail<->Product06/14 08:14
15F:→ bheegrl: 像前面有人提到的,正規化的部分研究一下06/14 08:18
16F:→ bheegrl: 2. 不就把商品資料建起來就好,同上一筆筆建在Product內06/14 08:22
17F:→ bheegrl: ID, 商店名稱,商品代碼,商品中文名/英文名..看你要加啥06/14 08:23
18F:→ bheegrl: 就苦功,但是建一次就好。RDBMS看一下啊,這是最基本的06/14 08:24
19F:→ BlacksPig: 串成字串,再交由後端的字串split api處理也夠完成作06/14 08:36
20F:→ BlacksPig: 業了,但是真實商城會有各種奇葩商品名稱,可能會讓s06/14 08:36
21F:→ BlacksPig: plit無法正常運作。不過這種問題其實應該跟同學討論場06/14 08:36
22F:→ BlacksPig: 景來做表格設計還有normalization,以後出來混遇到才 06/14 08:36
23F:→ BlacksPig: 會瞭解學生時期設計思慮不周全,然後印象更深刻06/14 08:36
※ 編輯: ntpuisbest (219.91.22.53 臺灣), 06/14/2021 08:49:41
24F:推 gorocky: 如果一個商品很多規格呢? 06/14 10:04
25F:推 xxxxae86: 多一個 shop_id 做複合主鍵就解決了 06/14 10:52
26F:→ xxxxae86: 至於 10 row 的問題只能跟你說,你即使存 json 之類的進 06/14 10:54
27F:→ xxxxae86: 去再在後端解只是徒增維護人員理解的成本 06/14 10:54
28F:→ xxxxae86: DB 速度慢是要下更好的 SQL 處理 06/14 10:54
29F:推 holebro: 照正規化的概念就是這樣設計吧 06/14 16:54
30F:推 sherees: 建議原po先去看看資料庫正規化 06/14 17:10
31F:推 KY1998: 商品很多規格要做商品類型,類型很多層一樣要再分 06/14 21:58
32F:→ KY1998: Class Diagram畫出來不就很清楚了 06/14 22:02
33F:推 MyNion: 訂單資料是immutable的&一對多,你要不要用NoSQL來存? 06/14 23:50
34F:推 new122851: 原子性 06/15 00:24
35F:推 bill0205: 建議還是看一下正規化比較好 06/15 02:45
36F:推 acgotaku: 這個我處理過,把訂單資訊存成json,子訂單是object arr 06/15 04:29
37F:→ acgotaku: ay 06/15 04:29
38F:推 acgotaku: pk設定成訂單編號,你把子訂單拆開存也是可以 06/15 04:31
39F:→ acgotaku: 但是要設定子訂單編號,不要直接用訂單編號 06/15 04:31
40F:→ acgotaku: 你的table不是只有存,也要複寫更改,存成json 06/15 04:33
41F:→ acgotaku: 是最方便的 06/15 04:33
42F:→ acgotaku: 天貓的資料同步給客戶的table 他們是這麼做的 06/15 04:35
43F:推 waypin2002: 訂單主檔一筆資料,訂單明細10筆。再去關聯商品 06/15 10:14
44F:推 rahit: 正規化先研究一下= = 06/15 12:17







like.gif 您可能會有興趣的文章
icon.png[問題/行為] 貓晚上進房間會不會有憋尿問題
icon.pngRe: [閒聊] 選了錯誤的女孩成為魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一張
icon.png[心得] EMS高領長版毛衣.墨小樓MC1002
icon.png[分享] 丹龍隔熱紙GE55+33+22
icon.png[問題] 清洗洗衣機
icon.png[尋物] 窗台下的空間
icon.png[閒聊] 双極の女神1 木魔爵
icon.png[售車] 新竹 1997 march 1297cc 白色 四門
icon.png[討論] 能從照片感受到攝影者心情嗎
icon.png[狂賀] 賀賀賀賀 賀!島村卯月!總選舉NO.1
icon.png[難過] 羨慕白皮膚的女生
icon.png閱讀文章
icon.png[黑特]
icon.png[問題] SBK S1安裝於安全帽位置
icon.png[分享] 舊woo100絕版開箱!!
icon.pngRe: [無言] 關於小包衛生紙
icon.png[開箱] E5-2683V3 RX480Strix 快睿C1 簡單測試
icon.png[心得] 蒼の海賊龍 地獄 執行者16PT
icon.png[售車] 1999年Virage iO 1.8EXi
icon.png[心得] 挑戰33 LV10 獅子座pt solo
icon.png[閒聊] 手把手教你不被桶之新手主購教學
icon.png[分享] Civic Type R 量產版官方照無預警流出
icon.png[售車] Golf 4 2.0 銀色 自排
icon.png[出售] Graco提籃汽座(有底座)2000元誠可議
icon.png[問題] 請問補牙材質掉了還能再補嗎?(台中半年內
icon.png[問題] 44th 單曲 生寫竟然都給重複的啊啊!
icon.png[心得] 華南紅卡/icash 核卡
icon.png[問題] 拔牙矯正這樣正常嗎
icon.png[贈送] 老莫高業 初業 102年版
icon.png[情報] 三大行動支付 本季掀戰火
icon.png[寶寶] 博客來Amos水蠟筆5/1特價五折
icon.pngRe: [心得] 新鮮人一些面試分享
icon.png[心得] 蒼の海賊龍 地獄 麒麟25PT
icon.pngRe: [閒聊] (君の名は。雷慎入) 君名二創漫畫翻譯
icon.pngRe: [閒聊] OGN中場影片:失蹤人口局 (英文字幕)
icon.png[問題] 台灣大哥大4G訊號差
icon.png[出售] [全國]全新千尋侘草LED燈, 水草

請輸入看板名稱,例如:Tech_Job站內搜尋

TOP