2013-04-12 57 views
0

我们在我们公司有一个用asp.net MVC编写的门户网站。现在每个部门都有自己的数据库,但我们希望避免拥有多个数据库,因为数据库方案是相同的,只是每个部门都有不同的数据。就像每个部门都有自己的项目等等,数据库模型应该如何更改这样避免有多个数据库? 我们也想分享一些项目之间的差异部门之间的项目。如何做到这一点?更改数据库方案,以避免有多个数据库

回答

0

您考虑的单一数据库必须重新设计其表格,以便您能够针对每个表格中的每条记录分辨该记录与哪个部门相关。基本上你需要为每个根级表添加一个“DeptId”列。通过根级表,我的意思是只有外键关系的父母。例如,如果你有一个OrderHeader和OrderLines,那么只有OrderHeader表需要有这个DeptId列。这些行与标题相关,因此您不需要将此列添加到行表中。或者,如果您有一个Customer表,每个客户只属于一个部门,那么您需要将DeptId列添加到该客户表中,然后在OrderHeader表上不需要它(因为订单头应引用Customer表)

想要在数据库之间共享的那些表/元素不会将DeptId列添加到它们中。