Sql server 如何将客户端数据库合并到一个数据库中?
在我的公司中,我们有一个选定的使用我们内部构建工具的公司列表(例如,Sql server 如何将客户端数据库合并到一个数据库中?,sql-server,database,sql-server-2008,database-design,multi-tenant,Sql Server,Database,Sql Server 2008,Database Design,Multi Tenant,在我的公司中,我们有一个选定的使用我们内部构建工具的公司列表(例如,Northwind) 当我们进行更改时,我们会将它们部署到所有客户机位置 目前的结构是:应用程序安装在客户机的位置,数据库与之一起 但是,我们希望将所有这些信息整合到一个数据库中,客户机将通过web服务连接任何数据请求 例如,我们已将Northwind应用程序和Db部署到X、Y和Z公司,并希望创建一个数据库来维护所有这些公司的数据 我们已经回顾了一个选项,该选项是为公司创建一个字段以将其与各种表关联,另一个选项是为每个公司创建一
Northwind
)
当我们进行更改时,我们会将它们部署到所有客户机位置
目前的结构是:应用程序安装在客户机的位置,数据库与之一起
但是,我们希望将所有这些信息整合到一个数据库中,客户机将通过web服务连接任何数据请求
例如,我们已将Northwind应用程序和Db部署到X、Y和Z公司,并希望创建一个数据库来维护所有这些公司的数据
我们已经回顾了一个选项,该选项是为公司创建一个字段以将其与各种表关联,另一个选项是为每个公司创建一个架构,这样我们就可以为相关公司分配权限。有没有替代方案?我们可以采用哪些方法来实现这一点,其利弊是什么
添加“公司”字段的一个缺点是,我们必须满足所有客户端数据库中的索引相同的要求,这使得对同一数据库的多个请求使得整个应用程序的性能更加困难。请帮忙
注意:使用Sql Server 2008进行研究。(出于您的目的,将一个租户视为一个客户机。)您将发现从“每个租户一个数据库”到“每个表中的每个租户”的范围
仔细阅读。这个领域的作家会让你困惑。期望像共享模式这样的技术术语对不同的作者意味着不同的东西
请参阅以了解折衷
对于你的第一步,除了简单地移动那些客户数据库之外,我什么也不想考虑。这样做会给你和你的应用程序程序员带来很多麻烦。您不需要在其上进行架构更改
这也将给您时间进行研究和测试。您希望在一个数据库中完成这一切的原因是什么?主要是出于维护目的,我们的客户群不断增长