zoukankan      html  css  js  c++  java
  • sql2005分区表示例

    SQL2005分区表可以在一定程度上解决海量数据的性能问题,比如可以规避高访问量数据区段的io竞争,可以缩小你查询数据范围的索引大小。 msdn参考

    http://msdn.microsoft.com/zh-cn/library/ms345146.aspx 一个完整的脚本示例

    --drop database dbPartitionTest   
      
    --测试数据库     
      
    create database dbPartitionTest   
      
    go   
      
      
      
    use    
      
    dbPartitionTest   
      
    go   
      
      
      
    --增加分组   
      
    alter database dbPartitionTest ADD FILEGROUP P200801   
      
    alter database dbPartitionTest ADD FILEGROUP P200802   
      
    alter database dbPartitionTest ADD FILEGROUP P200803   
      
    go   
      
    --分区函数   
      
    CREATE PARTITION FUNCTION part_Year(datetime)   
      
     
    AS RANGE LEFT FOR VALUES    
      
    (    
      
    '20080131 23:59:59.997','20080229 23:59:59.997','20080331 23:59:59.997'  
      
    )    
      
    go   
      
    --增加文件组   
      
    ALTER DATABASE dbPartitionTest ADD FILE (NAME = N'P200801',FILENAME = N'c:\tb_P200801.ndf',SIZE = 1MB,MAXSIZE = 500MB,FILEGROWTH = 1MB)TO FILEGROUP P200801   
      
    ALTER DATABASE dbPartitionTest ADD FILE (NAME = N'P200802',FILENAME = N'c:\tb_P200802.ndf',SIZE = 1MB,MAXSIZE = 500MB,FILEGROWTH = 1MB)TO FILEGROUP P200802   
      
    ALTER DATABASE dbPartitionTest ADD FILE (NAME = N'P200803',FILENAME = N'c:\tb_P200803.ndf',SIZE = 1MB,MAXSIZE = 500MB,FILEGROWTH = 1MB)TO FILEGROUP P200803   
      
    go   
      
    --分区架构   
      
    CREATE PARTITION SCHEME part_YearScheme  AS PARTITION part_Year   TO (P200801,P200802,P200803,[PRIMARY])   
      
    go   
      
      
      
    CREATE TABLE [dbo].t_part     
      
    (name 
    varchar(100default newid(),date datetime NOT NULL)   
      
    ON part_YearScheme (date)   
      
    go   
      
      
      
    --添加测试数据,每天1条   
      
    declare @date datetime   
      
    set @date='2007-12-31'  
      
    while @date<='2008-04-01'  
      
    begin   
      
        
    insert into t_part(date)values(@date)   
      
        
    set @date=@date+1  
      
    end   
      
    go   
      
    --查询数据分布在哪些分区   
      
    select $partition.part_Year(date) as 分区编号,* from t_part  order by date     
      
    --查询数据库文件   
      
    go   
      
    sp_helpfile  
  • 相关阅读:
    几个概率题
    几个智力题。。
    [算法]各种二分查找
    深入 JavaScript 时间对象 Date
    Leaflet 调用百度瓦片地图服务
    JavaScript中进制和字符编码问题
    DOM事件流
    flex 弹性布局
    javascript 闭包内部机制
    HTML DOM setAttribute()、与createAttribute()
  • 原文地址:https://www.cnblogs.com/linyechengwei/p/1684832.html
Copyright © 2011-2022 走看看