我有一个表A与客户和表P与产品。
我还有一张表C,代表客户购买的产品。
表格字段如下:
A(客户)
user_id
Name
Surname
P(产品)
product_id
price
product name
C(购买的产品)
id
product_id
user_id
quantity
date
C是A和P之间的多对多链接。
假设今天的客户名为" Bob Wright"已经买了一种名为" Beautiful_magazine"的产品。假设客户和产品都已存在于数据库中。
如何在C表中输入?
我知道我应该使用insert into select语句但是我很难面对,因为我应该检索用户id表单A和产品id表单P然后将它们放入C中的新行以及NOW函数()和表示价格的数值。 我做不到,因为我是新手。
任何提示?
EDIT 我想在不依赖软件的情况下使用INSERT语句手动创建它。
假设:
user_id:890 姓名:鲍勃 姓:赖特
product_id:4897 价格:5.90 product_name:Beautiful_magazine
我需要在C表中创建一个新行,如下所示:
id(autoincremental) product_id:4897 user_id:890 数量:1 日期:' 2017-2-20'
显然,应该使用where语句通过select语句检索P和A中的product_id和user_id。
答案 0 :(得分:0)
如果要从应用程序传递数据,请使用procedure(假设id自动递增)
CREATE PROCEDURE `AddSale` (IN ProdID INT, IN UserID INT, IN Qty INT)
BEGIN
insert into TableC (Product_ID, User_ID, Quantity, Date)
values (ProdID, UserID, Qty, Now());
END
在您的应用程序中,调用该过程并传递参数