合理使用外键
2张数据表:订单Order,订单进度OrderProgress
设计思路一、
1.Order:oid,userid,postInfo,isDel
2.OrderProgress:opId,oid,createTime,PayTime,isDel
这么设计,oid做外键,当拿到一个Order对象,在MVC里无法通过该对象获取订单进度.需要根据oid再查表OrderProgress;
设计思路二、
1.Order:oid,userid,postInfo,opId,isDel
2.OrderProgress:opId,createTime,PayTime,,isDel
这么设计,opId做外键,当拿到一个Order对象,在MVC里很方便获取对应的订单进度.
个人认为:外键效率更高.因为已经知道了opid,要查找此条数据方便(主键-索引);而设计思路一,还要重新查找.
思考:外键本质是怎么回事?
欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。如果感觉对您有用,请点击推荐。您的支持,是我的动力!