SQL Server 表压缩

表压缩有三个选项

  1、page

  2、row

  3、none

-----------------------------------------------------------------------------------------------------------------------

三种设置方式:

  第一种:定义时指定

    create table table_name(....)

    with

      (data_compression = none | page | row);

  第二种:修改时指定

    alter table table_name

    rebuild

    with

      (datacompression = page | row | none);

  第三种:针对特定分区

    create table table_name(...)

    on partition_schem_test(column_name)

    with

      (data_compression = page on partition(1 to 3),

       data_compression = row on partition(4));

    ---------------------------------------------------

    alter table table_name

    rebuild partition = 4

    with

      (data_compression = page);

时间: 2024-12-14 20:50:27

SQL Server 表压缩的相关文章

在一个SQL Server表中的多个列找出最大值

在一个SQL Server表中一行的多个列找出最大值 有时候我们需要从多个相同的列里(这些列的数据类型相同)找出最大的那个值,并显示 这里给出一个例子 IF (OBJECT_ID('tempdb..##TestTable') IS NOT NULL) DROP TABLE ##TestTable CREATE TABLE ##TestTable ( ID INT IDENTITY(1,1) PRIMARY KEY, Name NVARCHAR(40), UpdateByApp1Date DATE

SQL Server表分区详解

原文:SQL Server表分区详解 什么是表分区 一般情况下,我们建立数据库表时,表数据都存放在一个文件里. 但是如果是分区表的话,表数据就会按照你指定的规则分放到不同的文件里,把一个大的数据文件拆分为多个小文件,还可以把这些小文件放在不同的磁盘下由多个cpu进行处理.这样文件的大小随着拆分而减小,还得到硬件系统的加强,自然对我们操作数据是大大有利的. 所以大数据量的数据表,对分区的需要还是必要的,因为它可以提高select效率,还可以对历史数据经行区分存档等.但是数据量少的数据就不要凑这个热

[转载]在SQL Server 中,如何实现DBF文件和SQL Server表之间的导入或者导出?

原来使用SQL Server 2000数据库,通过DTS工具很方便地在SQL Server和DBF文件之间进行数据的导入和导出,现在安装了SQL Server2005之后,发现其提供的“SQL Server导入导出向导”中的数据源没有原来的丰富,缺少对DBF文件的支持. 1.右击数据库,选择“任务”>“导入数据”,打开“SQL Server导入和导出向导”对话框.2.在“数据源”中选择Microsoft OLE DB Provider for Visual FoxPro,单击“属性”按钮,打开“

导出 SQL SERVER 表中数据为脚本

ALTER PROCEDURE [dbo].[Usp_OutputData] @tablename sysname, @outputIdentitycolumn int AS declare @column varchar(3000) declare @columndata varchar(8000) declare @sql varchar(8000) declare @xtype tinyint declare @name sysname declare @objectId int decl

SQL SERVER表不能修改表结构的处理方法

SQL SERVER表提示不能修改表结构,这究竟是什么原因呢?下面就为您介绍处理该问题的方法,如果您在SQL SERVER表修改方面遇到过问题,不妨一看. 新装的SQL SERVER 2008,打开原来SQL SERVER 2008中建立的表,现在想增加一些字段,在保存时提示错误,无法保存. 刚开始以为是SQL SERVER 2008与2005的不兼容,后来发现在SQL SERVER 2008中新建的SQL SERVER表也存在无法修改表结构,也就是无法修改字段名和增加字段名. 提示是:不允许保

sql server 表变量存储临时查询数据

对于使用sql server 编写存储过程或者类似的sql 查询的时候我们使用表变量进行临时数据的存储,可以方便我们进行下来的数据处理 表变量的使用类似如下: declare @userinfo table(id nvarchar(50),name nvarchar(50)); insert into @userinfo(id,name) select classid,classname from classfirstselect * from @userinfo 以上的操作就是进行查询clas

SQL SERVER 表分区

一 .SQL SERVER 表分区介绍: SQL Server  引入的表分区技术,让用户能够把数据分散存放到不同的物理磁盘中,提高这些磁盘的并行处理性能以优化查询性能…… 二 .SQL SERVER 数据库表分区由三个步骤来完成: 1.创建分区函数 2.创建分区架构 3.对表进行分区 基于缓存更新机制,我使用时间来进行分区,这里大家根据业务的要求使用合适的字段来作为分区 创建数据库分区文件数量,这里存储一年的数据分成十二个分区,需要现在D盘建立好Data 的文件夹 里面包含Primary 文件

[转]如何将SQL Server表驻留内存和检测

注意这个功能在SQL2005后已经废弃,因为SQL2005会自动管理哪些表常驻内存. 将SQL Server数据表驻留内存是SQL Server提供的一项功能,在一般小型系统的开发过程中估计很少会涉及到.这里整理了相关文档资料,演示如何把SQL Server中一个表的所有数据都放入内存中,实现内存数据库,提高实时性. 1, DBCC PINTABLE Marks a table to be pinned, which means Microsoft SQL Server does not flu

SQL Server表分区的NULL值问题

SQL Server表分区的NULL值问题 SQL Server表分区只支持range分区这一种类型,往往会被大家吐槽 人家MySQL支持四种类型:RANGE分区.LIST分区.HASH分区.KEY分区 共同点是MySQL跟SQL Server也有分区对齐的问题,都是水平切分,大家都允许分区列存在NULL值 这次我们测试SQL Server表分区的分区列的NULL值,究竟NULL值是被存放在哪个区间,以前一直没有注意 测试脚本 --1.创建文件组 ALTER DATABASE [sss] ADD