SQLServerË÷Òýµ÷ÓÅʵ¼ù£¨1£©
Ë÷ÒýµÄÖØÒªÐÔ
Êý¾Ý¿âÐÔÄÜÓÅ»¯ÖÐË÷Òý¾ø¶ÔÊÇÒ»¸öÖØÁ¿¼¶µÄÒòËØ£¬¿ÉÒÔ˵£¬Ë÷ÒýʹÓò»µ±£¬ÆäËüÓÅ»¯´ëÊ©½«ºÁÎÞÒâÒå¡£
¾Û´ØË÷Òý
(Clustered Index)ºÍ·Ç¾Û´ØË÷Òý
(Non- Clustered Index)
×îͨË׵ĽâÊÍÊÇ:¾Û´ØË÷ÒýµÄ˳Ðò¾ÍÊÇÊý¾ÝµÄÎïÀí´æ´¢Ë³Ðò£¬¶ø¶Ô·Ç¾Û´ØË÷ÒýµÄË÷Òý˳ÐòÓëÊý¾ÝÎïÀíÅÅÁÐ˳ÐòÎ޹ء£¾ÙÀýÀ´Ëµ£¬Äã·µ½Ð»ª×ÖµäµÄºº×Ö“ÅÀ”
ÄÇÒ»Ò³¾ÍÊÇP¿ªÍ·µÄ²¿·Ö£¬Õâ¾ÍÊÇÎïÀí´æ´¢Ë³Ðò£¨¾Û´ØË÷Òý£©£»¶ø²»ÓÃÄ㵽Ŀ¼£¬ÕÒµ½ºº×Ö“ÅÀ”ËùÔÚµÄÒ³Â룬Ȼºó¸ù¾ÝÒ³ÂëÕÒµ½Õâ¸ö×Ö£¨·Ç¾Û´ØË÷Òý£©¡£
ÏÂ±í¸ø³öÁ˺ÎʱʹÓþ۴ØË÷ÒýÓë·Ç¾Û´ØË÷Òý:
¶¯×÷
ʹÓþ۴ØË÷Òý
ʹÓ÷Ǿ۴ØË÷Òý
Áо³£±»·Ö×éÅÅÐò
Ó¦
Ó¦
·µ»ØÄ³·¶Î§ÄÚµÄÊý¾Ý
Ó¦
²»Ó¦
Ò»¸ö»ò¼«ÉÙ²»Í¬Öµ
²»Ó¦
²»Ó¦
СÊýÄ¿µÄ²»Í¬Öµ
Ó¦
²»Ó¦
´óÊýÄ¿µÄ²»Í¬Öµ
²»Ó¦
Ó¦
Ƶ·±¸üеÄÁÐ
²»Ó¦
Ó¦
Íâ¼üÁÐ
Ó¦
Ó¦
Ö÷¼üÁÐ
Ó¦
Ó¦
Ƶ·±ÐÞ¸ÄË÷ÒýÁÐ
²»Ó¦
Ó¦
¾Û´ØË÷ÒýµÄΨһÐÔ
Õýʽ¾Û´ØË÷ÒýµÄ˳Ðò¾ÍÊÇÊý¾ÝµÄÎïÀí´æ´¢Ë³Ðò£¬ËùÒÔÒ»¸ö±í×î¶àÖ»ÄÜÓÐÒ»¸ö¾Û´ØË÷Òý£¬ÒòΪÎïÀí´æ´¢Ö»ÄÜÓÐÒ»¸ö˳Ðò¡£ÕýÒòΪһ¸ö±í×î¶àÖ»ÄÜÓÐÒ»¸ö¾Û´ØË÷Òý£¬ËùÒÔËüÏԵøüΪÕä¹ó£¬Ò»¸ö±íÉèÖÃʲôΪ¾Û´ØË÷Òý¶ÔÐÔÄܹܺؼü¡£
³õѧÕß×î´óµÄÎóÇø£º°ÑÖ÷¼ü×Ô¶¯ÉèΪ¾Û´ØË÷Òý
ÒòΪÕâÊÇSQLServerµÄĬÈÏÖ÷¼üÐÐΪ£¬ÄãÉèÖÃÁËÖ÷¼ü£¬Ëü¾Í°ÑÖ÷¼üÉèΪ¾Û´ØË÷Òý£¬¶øÒ»¸ö±í×î¶àÖ»ÄÜÓÐÒ»¸ö¾Û´ØË÷Òý£¬ËùÒԺܶàÈË¾Í°ÑÆäËûË÷ÒýÉèÖÃ
Ϊ·Ç¾Û´ØË÷Òý¡£Õâ¸öÊÇ×î´óµÄÎóÇø¡£ÉõÖÁÓеÄÖ÷¼üÓÖÊÇÎÞÒâÒåµÄ×Ô¶¯ÔöÁ¿×ֶΣ¬ÄÇÑùµÄ»°Clustered index¶ÔЧÂʵİïÖú£¬ÍêÈ«±»ÀË·ÑÁË¡£
¸Õ²Å˵µ½ÁË£¬¾Û´ØË÷ÒýÐÔÄÜ×îºÃ¶øÇÒ¾ßÓÐΨһÐÔ£¬ËùÒԷdz£Õä¹ó£¬±ØÐëÉ÷ÖØÉèÖá£Ò»°ãÒª¸ù¾ÝÕâ¸ö±í×î³£ÓõÄSQL²éѯ·½Ê½À´½øÐÐÑ¡Ôñ£¬Ä³¸ö×Ö¶Î×÷Ϊ¾Û´ØË÷Òý£¬»ò×éºÏ¾Û´ØË÷Òý£¬Õâ¸öÒª¿´Êµ¼ÊÇé¿ö¡£
ÊÂʵÉÏ£¬½¨±íµÄʱºò£¬ÏÈÐèÒªÉèÖÃÖ÷¼ü£¬È»ºóÌí¼ÓÎÒÃÇÏëÒªµÄ¾Û´ØË÷Òý£¬×îºóÉèÖÃÖ÷¼ü£¬SQLServer¾Í»á×Ô¶¯°ÑÖ÷¼üÉèÖÃΪ·Ç¾Û´ØË÷Òý£¨»á×Ô¶¯¸ù¾ÝÇé¿öÑ¡Ôñ£©¡£Èç¹ûÄãÒѾÉèÖÃÁËÖ÷¼üΪ¾Û´ØË÷Òý£¬±ØÐëÏÈɾ³ýÖ÷¼ü£¬È»ºóÌí¼ÓÎÒÃÇÏëÒªµÄ¾Û´ØË÷Òý£¬×îºó»Ö¸´ÉèÖÃÖ÷¼ü¼´¿É¡£
¼ÇסÎÒÃǵÄ×îÖÕÄ¿µÄ¾ÍÊÇÔÚÏàͬ½á¹û¼¯Çé¿öÏ£¬¾¡¿ÉÄܼõÉÙÂß¼IO¡£
ÎÒÃÇÏÈ´ÓÒ»¸öʵ¼ÊʹÓõļòµ¥Àý×Ó¿ªÊ¼¡£
Ò»¸ö¼òµ¥µÄ±í£º
CREATE TABLE [dbo].[Table1](
[ID] [int] IDENTITY(1,1) NOT NULL,
[Data1] [int] NOT NULL DEFAULT ((0)),
[Data2] [int] NOT NULL DEFAULT ((0)),
[Data3] [int] N
Ïà¹ØÎĵµ£º
create database db
use db
go
create table course
(
sno varchar(20),
cno int ,
Gmark int
)
insert into course values('20071513115',1,80)
insert into course values('20071513114',2,80)
insert into course values('20071513113',3,80)
insert into course values('20071513 ......
using System;
using System.Collections;
using System.Collections.Specialized;
using System.Data;
using System.Data.SqlClient;
using System.Configuration;
using System.Collections.Generic;
public class CommandInfo
{
public string CommandText;
public SqlPa ......
1. ΪºÎʹÓÃÓα꣺
ʹÓÃÓαê(cursor)µÄÒ»¸öÖ÷ÒªµÄÔÒò¾ÍÊǰѼ¯ºÏ²Ù×÷ת»»³Éµ¥¸ö¼Ç¼´¦Àí·½Ê½¡£ÓÃSQLÓïÑÔ´ÓÊý¾Ý¿âÖмìË÷Êý¾Ýºó£¬½á¹û·ÅÔÚÄÚ´æµÄÒ»¿éÇøÓòÖУ¬ÇÒ½á¹û
ÍùÍùÊÇÒ»¸öº¬Óжà¸ö¼Ç¼µÄ¼¯ºÏ¡£Óαê»úÖÆÔÊÐíÓû§ÔÚSQL serverÄÚÖðÐеطÃÎÊÕâЩ¼Ç¼£¬°´ÕÕÓû§×Ô¼ºµÄÒâÔ¸À´ÏÔʾºÍ´¦ÀíÕ ......
/*drop table scourse
drop table course
drop table student
drop table major*/
create database db
use db
--רҵ±í
create table major
(spno char(5) not null primary key,
spname varchar(20) not null,
pno char(2) )
--ѧÉú±í
create table student
(sno char(7) not null primary key,
......
DATEDIFF(datepart, startdate, enddate)
Datepart Abbreviations
year yy, yyyy
quarter qq, q
month mm, m
......