易截截图软件、单文件、免安装、纯绿色、仅160KB

SQL SERVER性能优化 分区表

本文演示了 SQL Server 2008 分区表实例;
1. 创建测试数据库 ;
2.   创建分区函数;
3.   创建分区架构;
4.  创建分区表;
5.  创建分区索引 ;
6.  分区切换 ;
7.  查询哪些表使用了分区表;
-- 作成者   leno
-- 日期: 2009-06-06 23:50:01.700
-- 创建测试数据库
USE master
GO 
IF OBJECT_ID(N'PartitionDataDB') IS NOT NULL
DROP DATABASE PartitionDataDB
GO
CREATE DATABASE PartitionDataDB
ON PRIMARY
(
NAME = N'File_A_H',
FILENAME ='D:\Microsoft\Microsoft SQL Server 2008\MSSQL10.MSSQLSERVER\MSSQL\DATA\PartitionDataDB_AH.mdf'
),
FILEGROUP FileGroup_I_N
(
NAME = N'File_I_N',
FILENAME ='D:\Microsoft\Microsoft SQL Server 2008\MSSQL10.MSSQLSERVER\MSSQL\DATA\PartitionDataDB_IN.mdf'
),
FILEGROUP FileGroup_M_Z
(
NAME = N'File_M_Z',
FILENAME ='D:\Microsoft\Microsoft SQL Server 2008\MSSQL10.MSSQLSERVER\MSSQL\DATA\PartitionDataDB_MZ.mdf'
)
GO
-- 创建分区函数
USE PartitionDataBase;
GO
CREATE PARTITION FUNCTION StaffNameRangePFN(varchar(100))
AS
RANGE LEFT FOR VALUES ('H','M')
GO
-- 创建分区架构
CREATE PARTITION SCHEME StaffNamePScheme
AS
PARTITION StaffNameRangePFN
TO ([PRIMARY], FileGroup_I_N, FileGorup_M_Z)
GO
-- 创建分区表
CREATE TABLE [dbo].[Staff] 
(
[StaffName] [varchar](100) NOT NULL
)
ON StaffNamePScheme ([StaffName])
GO
-- 插入测试数据1
INSERT INTO [dbo].[Staff]
SELECT FirstName from AdventureWorks.Person.Contact
-- 查看结果
SELECT
    $partition.StaffNameRangePFN(StaffName) AS [Partition Number],
    MIN(StaffName) AS [Min StaffName],
    MAX(StaffName) AS [Max StaffName],
    COUNT(StaffName) AS [Rows In Partition]
from dbo.staff AS o
GROUP BY $partition.StaffNameRangePFN(StaffName)
ORDER BY [Partition Number]
/*
1 Abigail Guy 364
2 Hannah Lynn 241
3 Maggie Yvette 395
*/
-- 插入测试数据2
INSERT INTO [dbo].[Staff]
SELECT AddressLine1 from AdventureWorks.Person.Address
-


相关文档:

SQL 删除重复数据,只保留1条

if not object_id('Tempdb..#T') is null
    drop table #T
Go
Create table #T([ID] int,[Name] nvarchar(1),[Memo] nvarchar(2))
Insert #T
select 1,N'A',N'A1' union all
select 2,N'A',N'A2' union all
select 3,N'A',N'A3' union all
select 4,N'B',N'B1' union all
select 5,N'B',N'B2'
G ......

SQL 合并行,返回带分隔字符的字符串

 
--合并行,并返回合并的值
Create proc [dbo].[proUniteRow]
@tab varchar(30),           --表名
@col varchar(30),           --合并的列名
@where varchar(2000),     &nbs ......

PL/SQL语言简介

一、    PL/SQL语言简介
(本讲义之所有程序均调式通过)
首先我们看一个简单之例子,下面这个例子是统计从1至100的总和.
declare
i number:=0;          /*声明变量井给初值*/
t number:=1;
error_message exception;  /*声明一个出错处理*/
begin ......

SQL 贷款毕业生信息管理系统数据库设计

USE MASTER
GO
--创建数据库文件存放目录
EXEC XP_CMDSHELL 'MKDIR D:\LOANSTUMIS'
IF EXISTS(SELECT *
from SYSDATABASES
WHERE NAME = 'LOANSTU')
DROP DATABASE LOANSTU
GO
--创建数据库
CREATE DATABASE LOANSTU
ON
(
NAME = 'LOANSTU_DATA',
FILENAME = 'D:\LOANSTUMIS\LOANSTU_DATA.MDF',
......

SQL 2005 存储过程 调试

SQL 2005 的存储过程和触发器调试大法(原创)
www.chengchen.net 程晨
       昨天晚上我找遍了互联网也没有发现关于SQL2005存储过程和触发器的调试方法,研究到凌晨2点多钟,终于找到方法了,不干独享,拿出来分享。如果要转载,请保留版权,谢谢!
     &nbs ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号