zoukankan      html  css  js  c++  java
  • 创建视图索引

    创建视图索引需要注意哪些事项

    1、创建索引时提示该视图未绑定到架构(创建视图时加上schemabinding关键字则不能*号存在索引中)

         解决方法:在创建视图的时候加上schemabinding

         例句:CREATE VIEW [dbo].[viewTable] with schemabinding AS select ID from .....

    2、加上schemabinding建立索引的时候又提示必须先创建唯一聚集索引

        解决方法: 在创建视图时加上UNIQUE  CLUSTERED

        例句: CREATE UNIQUE  CLUSTERED index ix_ccount on [viewTable](ID)

    3、 如果视图包含一个Group By子句,那么在创建视图的时候select语句中必须包含count_big(*)

         错误信息:无法在视图 'viewTable' 上创建索引,因为该视图的定义中不包括 count_big(*)。

        解决方法:SELECT COUNT_BIG(*) num......

    4、视图不能包含一个外部链接或自链接,也就是说在链接表时只能使用INNER JOIN并且INNER JOIN前后不能使同一个表,不能使用LEFT(RIGHT) JOIN 或者 LEFT (RIGHT) OUTER JOIN ;  

        错误信息:无法 index 视图 'KF_BJKQ.dbo.ViewYXHolidayTotal'。它包含一个或多个不允许使用的构造。

        解决方法:把left join 改成inner join

    5、视图不允许使用某些集合函数,如:Count(*)可以使用count_big(*)代替、avg()、max()、min()、stdev()、stdevp()、var()或varp()等;

        错误信息:无法在视图 'ViewYXHolidayTotal' 上创建索引,因为该视图的定义中包括未知值(可为空表达式的求和)。

        解决方法:在创建视图的时候把包含上面的函数去掉即可

    6、F.视图不能包含UNION子句、TOP子句、ORDER BY子句、Having子句、Rollup子句、Cube子句、compute子句、Compute By子句或Distinct关键字; 

    7、视图不能使用select * 这样的语句,所有字段都必须显示指定

     

     

  • 相关阅读:
    通过Java获取图片的信息
    防止浏览器缓冲
    InitializingBean,DisposableBean
    php 直接跳出嵌套循环
    个推IGt.BaseTemplate.php,不仅有bug,还有bom头,好恶心!
    【洛谷】2473:[SCOI2008]奖励关【期望DP(倒推)】
    【BZOJ】4720: [Noip2016]换教室
    【BZOJ】4767: 两双手【组合数学】【容斥】【DP】
    【BZOJ】4318: OSU!【期望DP】
    【BZOJ】4985: 评分【DP】
  • 原文地址:https://www.cnblogs.com/starts/p/5284023.html
Copyright © 2011-2022 走看看