众所周知,petshop用到了四个数据库,他们分别是MSPetShop4,MSPetShop4Profile、MSPetShop4Order还有一个就是MSPetshop4Services.
今天重点学习前三个,先说第一个MSPetShop4吧,它有6张表,我截图下来说话吧,这样有助于我的表达:
这张是缓存用的,因为缓存我还没有深入了解,故这个会放在后面。这个缓存是PL层的,好像用到工厂模式。
这个是库存商品的表。它的设计很简单,只是记录宠物的数量。
这个估计要重点介绍了,Category是大类别表,Product小类别的表(我这样给他取名的),Item理所当然是宠物的基本信息啦(这个基本信息没有那么全面,这个是再前台显示的,所以要显示价格、图片啦等等),我后面还会介绍到MSPetShop4Order.LineItem这张表,这张表跟这Item有点像,都是关于宠物的,但一个是介绍用的,一个是下单用的,所以后者比较简单,只要价格数量的基本信息就够了。最后一张表示Supplier,这个表示供应商的表,记录了供应商的基本信息。从这个数据库可以看出,这个Petshop系统是考虑的比较全面的,他考虑到买进来的和卖出去的。以前自己也做过一个网上鲜花销售系统,但是知考虑到卖出去的。所以他考虑到宠物的进价成本和单价。那么如果后台要计算盈利就应该联合MSPetShop4和MSPetShop4Order数据库了,应该前者有记录进价后者有记录卖出的数量。(后面要做联合数据库使用的笔记)
接下来介绍MSPetShop4Order这个数据库吧:
这个数据库正如他的名字一样是关于订单的。第一个表Order是下订单人的详细资料吧,以及用户编号,AuthorizationNumber翻译过来好像是授权数字,我下了个订单测试了下,然后他的值是“1409452204”,这个数字好像是随机给的。Locale翻译过来是语言环境,具体是什么鬼东东我也不知道,我下的测试的后它的值是
US_en,估计这个不会对我们程序太大影响,先放着。
LineItem表是购买宠物的信息表,其中包括单价啦、数量啦、宠物编号还有一个就是主键LineNum(这个是什么呢?)
OrderStatus这个表的作用我现在还不能理解。
接下来看看被重写的Profile存放用户个性化信息的数据库MSPetShop4Profile吧:
一个Profile是记录用户活动的情况,比如最后一次登录时间,最后一次更新时间。Cart不言而喻,是由关购物车的信息。Account是存放注册用户的资料。
最后一个就是MSPetShop4Membership,这个是记录用户信息,如密码用户名。但petshop没有用的全用Membership这个数据库,他只用了他的注册和登录功能吧。这个先不弄进来,因为我对他的机制还不是很清楚,写进来也是白写。