惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

WordPress大学
WordPress大学
B
Blog RSS Feed
The GitHub Blog
The GitHub Blog
爱范儿
爱范儿
博客园 - 司徒正美
J
Java Code Geeks
酷 壳 – CoolShell
酷 壳 – CoolShell
Engineering at Meta
Engineering at Meta
大猫的无限游戏
大猫的无限游戏
D
Docker
Blog — PlanetScale
Blog — PlanetScale
Recent Announcements
Recent Announcements
罗磊的独立博客
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - 聂微东
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
人人都是产品经理
人人都是产品经理
Stack Overflow Blog
Stack Overflow Blog
M
MIT News - Artificial intelligence
腾讯CDC
T
The Blog of Author Tim Ferriss
小众软件
小众软件
U
Unit 42
T
Tailwind CSS Blog

博客园 - kagar

挖掘经典:几乎被人遗忘的HTML七种用法 【转】P2P穿透NAT原理 关于delphi调用.net com的详细过程 3desj加密 C++ ,C#类型对照 DLL+ ActiveX控件+WEB页面调用例子 测试 表空间 Office文档在线编辑的实现之二 如何在Web页面上直接打开、编辑、创建Office文档 Foursquare引爆了什么 承博士:让云计算落地生根的中国云计算平台 PHP - Smarty 工作流系统功能列表系列 跨域情况下Iframe高度自适应解决方案 - kagar - 博客园 五种丑陋的项目管理 Chart 报表 jQuery 数据仓库与事务型数据库的区别 RUP与XP的平衡之道
Sql Server2005不同的表使用不同的表空间
kagar · 2010-05-24 · via 博客园 - kagar

Sql Server2005不同的表使用不同的表空间

在SqlServer2005中,建表时是默认把所有的表都保存在PRIMARY默认表空间中的。当数据库中表很多,并且数据量很大时,会导致数据库性能严重下降,有必要将一些大的表放到不同的表空间中去。
主要的步骤如下所示:
1、建立表空间(数据文件)

USE [master]
GO
ALTER DATABASE [TestDB] ADD FILEGROUP [Log1]
GO
ALTER DATABASE [TestDB] ADD FILE ( NAME 
= N'Log1', FILENAME = N'D:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\Log1.ndf' , SIZE = 3072KB , FILEGROWTH = 1024KB ) TO FILEGROUP [Log1]
GO

首先是在TestDB上建立文件组Log1
然后在文件组Log1上加入文件Log1,初始值3M

2、建表时使用这个表空间

USE [TestDB]
GO
CREATE TABLE [dbo].[Log](
    [aa] [nchar](
10),
    [bb] [nchar](
10)
) ON [Log1]

3、建索引时使用不同的表空间

create index IX_LOG_BB on dbo.log(bb) on [Log2]

一般对大表的操作,最好把表和索引放在不同的表空间中,提升查询等的性能

另外:
对一些特别大的

表,还需要将一张表的数据根据条件放到不同的表空间中去,这就需要再进行表分区的操作。
不过,只有在SQL Server Enterprise Edition 中才能使用表分区