zoukankan      html  css  js  c++  java
  • SQL Server ->> 分区表上创建唯一分区索引

    今天在读《Oracle高级SQL编程》这本书的时候,在关于Oracle的全局索引的章节里面有一段讲到如果对一张分区表创建一条唯一索引,而索引本身也是分区的,那就必须把分区列也加入到索引列表中去,当然不一定要再第一列。后来自己就去SQL Server上也试了一下。果真和Oracle一样的道理。再看到后面章节算是理解了。因为如果表被分区了,其实就是每个分区等于一个索引树了。这也就是为什么在SQL Server下这张sys.partitions系统视图中每个partition对应了一个hobt_id。

    create partition function PF_One_Fifty_OneHundred(INT)
    AS RANGE LEFT FOR VALUES(1,50,100)
    GO
    
    CREATE PARTITION SCHEME PS_One_Fifty_OneHundred
    AS PARTITION PF_One_Fifty_OneHundred
    TO ([PRIMARY], [PRIMARY], [PRIMARY], [PRIMARY]);
    GO
    
    --DROP TABLE  dbo.partition_test
    
    
    
    create table dbo.partition_test
    (
        col1 INT    ,
        col2 INT
    
    ) ON PS_One_Fifty_OneHundred(col1)
    GO
    
    CREATE UNIQUE INDEX UIX_partition_test_col1 ON dbo.partition_test(col1) ON PS_One_Fifty_OneHundred(col2);
    
    
    Msg 1913, Level 16, State 1, Line 35
    The operation failed because an index or statistics with name 'UIX_partition_test_col1' already exists on table 'dbo.partition_test'.
  • 相关阅读:
    深度学习练习(三)
    深度学习核心技术笔记(一)
    tensorflow的函数
    举例
    Tensorflow 笔记
    tensorflow框架
    基于python的感知机
    深度学习练习(一)
    深度学习练习(二)
    [javascript 实践篇]——那些你不知道的“奇淫巧技”
  • 原文地址:https://www.cnblogs.com/jenrrychen/p/4641747.html
Copyright © 2011-2022 走看看