我在一个项目开发中,使用了多个视图进行动态查询,结果有几个视图出现如下错误:未能为视图或函数解析分配辅助表。超过了查询中表的最大数目256。
请问各位高手,在多个视图中的表数目是如何计数的?是按表出现次数还是表个数计算的,如a表如果在所有视图中出现过6次,则算几次呢?
还有何方法取消这种要命的限制呢?好象Oracle就没有这种限制!!!!!

解决方案 »

  1.   

    这个限制是SQL本身的,联系比尔大门?做修改?
      

  2.   

    自连接也算次数,这个限制不知道在SQL Server 2005中是否还有。
    如果确实需要连接超过256个对象,需要变通,如:可以将某些表的关联提前生成临时表,再进行关联。
      

  3.   

    修改一下你的查询代码
    相信有些视图里面使用了重复的表,SQL会继续计数而不区分重复的。
    相信你的程序里面不是真的要关联到256个基本表吧?
    太恐怖了点