亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

數據庫中購物車表和訂單表的區別

數據庫中購物車表和訂單表的區別

PHP
人到中年有點甜 2023-03-26 14:09:01
我在網上商店網站上工作。我需要做一個購物車。我很困惑,為了制作購物車,我必須在我的數據庫中制作一個購物車表(具有 customer_id、product_id、qty、price).. 然后當客戶結賬購物車時,我必須制作另一個表( order) 存儲已簽出的訂單 ?? 那我必須做2張桌子,一張用來存放購物車,一張用來存放退房時的訂單?將簽出的訂單存儲在數據庫中是合乎邏輯的(因為它不需要太多更新..)但是.. 將購物車存儲在數據庫中是否有效?想象一下,每當客戶將商品添加到購物車時,我必須使用 INSERT 查詢,然后當客戶增加或減少數量時,我必須使用 UPDATE 查詢,然后當客戶刪除購物車時 DELETE 查詢......知道通??蛻魰啻翁砑拥劫徫镘嚕缓笤跊]有結帳的情況下將其移除。也許他們改變了主意?什么是合乎邏輯的解決方案?謝謝您的幫助
查看完整描述

1 回答

?
撒科打諢

TA貢獻1934條經驗 獲得超2個贊

這取決于您的業務。如果您的業務需要;

  • 如果用戶未登錄您的網站,您可以保存在他們的 cookie 本地存儲中。

  • 如果用戶通過身份驗證,您可以從 cookie 中獲取所有購物車并保存到您的數據庫中

  • 如果沒有登錄付款,那么您不必在用戶的 cookie 和數據庫之間移動它們。

  • 如果用戶可能從多個平臺登錄,而你想統一購物車,那么你需要將購物車保存在你的數據庫(mysql 或任何其他數據庫)中。

您可以使用其他數據庫技術,例如redis帶有過期選項的哈希。它非??欤艺J為它涵蓋了cart.

  • 使用會話標識符創建哈希

  • 用于EXPIRE設置生存時間(可能是 24 小時)- O(1)

  • 用于HSET添加產品及其數量 - 每個字段/值的 O(1)

  • 用于HINCRBY增加數量 - O(1)

  • 用于HDEL刪除具有各自數量的產品 - 單個字段的 O(1)

  • 用于HGETALL獲取所有購物車。- O(N) 字段數。

127.0.0.1:6379> hset user:somesessionidentifier:cart productid:2 5

(integer) 1

127.0.0.1:6379> expire user:somesessionidentifier:cart 86400

(integer) 1

127.0.0.1:6379> ttl user:somesessionidentifier:cart

(integer) 86394

127.0.0.1:6379> hset user:somesessionidentifier:cart productid:3 1

(integer) 1

127.0.0.1:6379> hset user:somesessionidentifier:cart productid:92 1

(integer) 1

127.0.0.1:6379> hset user:somesessionidentifier:cart productid:5 1

(integer) 1

127.0.0.1:6379> hgetall user:somesessionidentifier:cart

1) "productid:2"

2) "5"

3) "productid:3"

4) "1"

5) "productid:92"

6) "1"

7) "productid:5"

8) "1"

127.0.0.1:6379> HINCRBY user:somesessionidentifier:cart productid:2 1

(integer) 6

127.0.0.1:6379> HDEL user:somesessionidentifier:cart productid:5

(integer) 1

127.0.0.1:6379> hgetall user:somesessionidentifier:cart

1) "productid:2"

2) "6"

3) "productid:3"

4) "1"

5) "productid:92"

6) "1"

127.0.0.1:6379>


查看完整回答
反對 回復 2023-03-26
  • 1 回答
  • 0 關注
  • 199 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號