在我的数据库中,我有 3 张表,一张用于客户,一张用于订单,一张用于产品。一个客户可以有任意数量的订单,一个订单可以有任意数量的产品。如何实现 3 个表之间的这种关系?
存储在数据库中的信息:
客户:社保号、姓名、地址、电话号码
订单:订单号、日期
产品:产品编号、类别、价格
在我的数据库中,我有 3 张表,一张用于客户,一张用于订单,一张用于产品。一个客户可以有任意数量的订单,一个订单可以有任意数量的产品。如何实现 3 个表之间的这种关系?
存储在数据库中的信息:
客户:社保号、姓名、地址、电话号码
订单:订单号、日期
产品:产品编号、类别、价格
好的,这是开始的地方。
首先,您需要为每个表提供一个 ID(ID 是一个唯一标识符,因此如果我说想要客户 X,表中不会有 2 个客户 X)对于客户,您可以使用社会保险号(或者您创建一个列称为CUSTOMER_ID
)
一个客户可以有任意数量的订单,所以你应该放一列以便知道这个订单属于哪个客户。因此,为了在表中添加一个名为CUSTOMER_ID
该引用CUSTOMER_ID
的列CUSTOMER
所以这 2 个订单属于 CUSTOMER 且 CUSTOMER_ID = 1:
ORDER_NUMBER DATE CUSTOMER_ID
1 1/1/2013 1
2 2/1/2013 1
CUSTOMER_ID
在ORDERS
被称为FOREIGN KEY
其余的也是如此。
(PS:更改表名ORDER
,ORDER
是SQL中使用的关键字,用于排序项目SELECT .... FROM TABLE1 ORDER BY ....
)