簡體   English   中英

更新沒有主鍵的表

[英]Update table without primary key

我正在建立一個商店,每個產品都有一套獨特的屬性。

產品db看起來像這樣:

products_id, relation_id, product_name, description, 
price, glass, shipping, img, cat, subcat, model

由於每個產品都有幾個(~40個)該產品獨有的不同屬性,因此我只創建了第二個表來存儲它們。

products_id, att_name, att_val, att_head, att_standard, att_order

這樣可以正常工作,因為永遠不會有兩個唯一的行。 然而,問題是當我需要修改屬性內容時。

使用MySQL Workbench我可以使用類似的東西來修改行

UPDATE product_attributes SET att_val='1500' WHERE products_id='112' AND att_head='threshold'

但是,當我從我的PHP腳本更新時,這似乎不起作用。

有沒有一種簡單的方法來修改表以支持更新?

我很清楚沒有獨特專欄的愚蠢。 但我不知道如何使兩個表相關聯。 我應該在哪里存儲屬性的唯一ID?

一個選擇,

主鍵 “auto_incremented”添加到product_attributes表中...

ALTER TABLE `product_attributes` ADD  `id` INT( 10 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST

Id僅適用於CRUD (創建讀取更新刪除)任務。

您可以在兩個表之間建立的唯一關系是products_id允許您為一個product提供少量product_attributes

由於1個產品具有多個存儲在第二個表中的唯一屬性,因此應使用表產品的ID並將其存儲在具有屬性的第二個表中。

希望這是你需要的嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM