试图,create view v_all
as
select * from table1
union all
select * from table2
...2000 多个表, 性能上肯定会差点

解决方案 »

  1.   

    目前没有提供什么“理想”的方案。
    1、2005及以上版本可以用分区表功能把所有表整合到一个表中,但是合并代价还是有点高,并且可能引起前端程序的变动。
    2、如果分区表不能用,首选把所有表union all到一个视图,表数据相对稳定的话建成索引视图,不行的话就用普通视图,不过性能非常差。
    3、还有一个方案,根据查询条件,和元数据,动态拼接字符串。