答案 0 :(得分:4)
答案 1 :(得分:1)
答案 2 :(得分:0)
我会更多地了解应用程序的细节以及获取,选择,删除等过程。但是,要给出一个可行的答案。
简而言之,使用分区表和分布式视图。每个应用程序都通过公共分区视图“键入”这些表,如果任何应用程序必须对另一个表(或“键”)执行操作,它可以使用相同的视图并对其他表执行操作。
更详细......
如果您拥有SQL Server的Enterprise或Developer版本,或者提供分布式视图的任何其他版本,那么您可以使用分区列(“App1”,“App2”,“App3”)创建三个或更多表,如Mark Byers所说的,然后将分配处理数据的能力。
现在为table1选择Field1,Field2,Field3等创建一个视图(WITH SCHEMABINDING)UNION从table2选择Field1,Field2,Field3等UNION从Table3中选择Field1,Field2,Field3等“< / p>
在单独表示数据的一/两个字段上创建唯一的聚簇键。完成后,您现在可以从view中选择/删除/更新partitioncolumn =“app1”和“id =?”。此例程使得视图上的活动允许进行操作查询(插入/更新/删除),并且仅作用于分区数据的表。
因此,App1发送一个“App1”WHERE过滤器,即使视图有,db引擎也只对table1起作用。