SQL Server Ë÷Òý»ù´¡ÖªÊ¶(2)
£¨http://www.builder.com.cn/2008/0211/733054.shtml£© »ù´¡ÖªÊ¶£¨4£©
²»ÂÛÊÇ ¾Û¼¯Ë÷Òý£¬»¹ÊǷǾۼ¯Ë÷Òý£¬¶¼ÊÇÓÃB+Ê÷À´ÊµÏֵġ£ÎÒÃÇÔÚÁ˽âÕâÁ½ÖÖË÷Òý֮ǰ£¬ÐèÒªÏÈÁ˽âB+ͨ¹ý×ܽᣬÎÒ·¢ÏÖ×Ô¼ºÒÔǰºÜ¶àºÜÄ£ºýµÄ¸ÅÄî¶¼ÇåÎúÁ˺ܶࡣ
²»ÂÛÊÇ ¾Û¼¯Ë÷Òý£¬»¹ÊǷǾۼ¯Ë÷Òý£¬¶¼ÊÇÓÃB+Ê÷À´ÊµÏֵġ£ÎÒÃÇÔÚÁ˽âÕâÁ½ÖÖË÷Òý֮ǰ£¬ÐèÒªÏÈÁ˽âB+Ê÷¡£Èç¹ûÄã¶ÔBÊ÷²»Á˽âµÄ»°£¬½¨Òé²Î¿´ÒÔϼ¸ÆªÎÄÕ£º
BTree,B-Tree,B+Tree,B*Tree¶¼ÊÇʲô
http://blog.csdn.net/manesking/archive/2007/02/09/1505979.aspx
B+ Ê÷µÄ½á¹¹Í¼:
B+ Ê÷µÄÌØµã:
ËùÓйؼü×Ö¶¼³öÏÖÔÚÒ¶×Ó½áµãµÄÁ´±íÖУ¨³íÃÜË÷Òý£©£¬ÇÒÁ´±íÖеĹؼü×ÖÇ¡ºÃÊÇÓÐÐòµÄ£»
²»¿ÉÄÜÔÚ·ÇÒ¶×Ó½áµãÃüÖУ»
·ÇÒ¶×Ó½áµãÏ൱ÓÚÊÇÒ¶×Ó½áµãµÄË÷Òý£¨Ï¡ÊèË÷Òý£©£¬Ò¶×Ó½áµãÏ൱ÓÚÊÇ´æ´¢£¨¹Ø¼ü×Ö£©Êý¾ÝµÄÊý¾Ý²ã£»
B+ Ê÷ÖÐÔö¼ÓÒ»¸öÊý¾Ý£¬»òÕßɾ³ýÒ»¸öÊý¾Ý£¬ÐèÒª·Ö¶àÖÖÇé¿ö´¦Àí£¬±È½Ï¸´ÔÓ£¬ÕâÀï¾Í²»ÏêÊöÕâ¸öÄÚÈÝÁË¡£
¾Û¼¯Ë÷Òý£¨Clustered Index£©
¾Û¼¯Ë÷ÒýµÄÒ¶½Úµã¾ÍÊÇʵ¼ÊµÄÊý¾ÝÒ³
ÔÚÊý¾ÝÒ³ÖÐÊý¾Ý°´ÕÕË÷Òý˳Ðò´æ´¢
ÐеÄÎïÀíλÖúÍÐÐÔÚË÷ÒýÖеÄλÖÃÊÇÏàͬµÄ
ÿ¸ö±íÖ»ÄÜÓÐÒ»¸ö¾Û¼¯Ë÷Òý
¾Û¼¯Ë÷ÒýµÄƽ¾ù´óС´óԼΪ±í´óСµÄ5%×óÓÒ
ÏÂÃæÊÇÁ½¸±¼òµ¥ÃèÊö¾Û¼¯Ë÷ÒýµÄʾÒâͼ£º
ÔÚ¾Û¼¯Ë÷ÒýÖÐÖ´ÐÐÏÂÃæÓï¾äµÄµÄ¹ý³Ì£º
select * from table where firstName = 'Ota'
Ò»¸ö±È½Ï³éÏóµãµÄ¾Û¼¯Ë÷Òýͼʾ£º
·Ç¾Û¼¯Ë÷Òý £¨Unclustered Index£©
·Ç¾Û¼¯Ë÷ÒýµÄÒ³£¬²»ÊÇÊý¾Ý£¬¶øÊÇÖ¸ÏòÊý¾ÝÒ³µÄÒ³¡£
Èôδָ¶¨Ë÷ÒýÀàÐÍ£¬ÔòĬÈÏΪ·Ç¾Û¼¯Ë÷Òý
Ò¶½ÚµãÒ³µÄ´ÎÐòºÍ±íµÄÎïÀí´æ´¢´ÎÐò²»Í¬
ÿ¸ö±í×î¶à¿ÉÒÔÓÐ249¸ö·Ç¾Û¼¯Ë÷Òý
ÔڷǾۼ¯Ë÷Òý´´½¨Ö®Ç°´´½¨¾Û¼¯Ë÷Òý£¨·ñÔò»áÒý·¢Ë÷ÒýÖØ½¨£©
ÔڷǾۼ¯Ë÷ÒýÖÐÖ´ÐÐÏÂÃæÓï¾äµÄµÄ¹ý³Ì£º
select * from employee where lname = 'Green'
Ò»¸ö±È½Ï³éÏóµãµÄ·Ç¾Û¼¯Ë÷Òýͼʾ£º
ʲôÊÇ Bookmark Lookup
ËäÈ»SQL 2005 ÖÐÒѾ²»ÔÚÌá Bookmark Lookup ÁË(»»ÌÀ²»»»Ò©)£¬µ«ÊÇÎÒÃǵĺܶàËÑË÷¶¼ÊÇÓõÄÕâÑùµÄËÑË÷¹ý³Ì£¬ÈçÏ£º
ÏÈÔڷǾۼ¯ÖÐÕÒ£¬È»ºóÔÙÔÚ¾Û¼¯Ë÷ÒýÖÐÕÒ¡£
ÔÚ http://www.sqlskills.com/ ÌṩµÄÒ»¸öÀý×ÓÖУ¬¾Í¸øÎÒÃÇÑÝʾÁË Bookmark Lookup ±È Table Scan ÂýµÄÇé¿ö£¬Àý×ӵĽű¾ÈçÏ£º
USE CREDITgo-- These samples use the Credit database. You can download and restore the-- credit database from here:-- http://www.s
Ïà¹ØÎĵµ£º
http://www.umgr.com/blog/PostView.aspx?bpId=36294
1. Ö´ÐÐsqlÓï¾ä
int sqlite3_exec(sqlite3*£¬ const char *sql£¬ sqlite3_callbacksql Óï·¨
£¬ void *£¬ char **errmsg );
Õâ¾ÍÊÇÖ´ÐÐÒ»Ìõ sql Óï¾äµÄº¯Êý¡£
µÚ1¸ö²ÎÊý²»ÔÙ˵ÁË£¬ÊÇÇ°Ãæopenº¯ÊýµÃµ½µÄÖ¸Õ롣˵ÁËÊǹؼüÊý¾Ý½á¹¹¡£
µÚ2¸ö²ÎÊýconst char ......
Èç¹ûÄã¾³£Óöµ½ÏÂÃæµÄÎÊÌ⣬Äã¾ÍÒª¿¼ÂÇʹÓÃSQL ServerµÄÄ£°åÀ´Ð´¹æ·¶µÄSQLÓï¾äÁË£º
SQL³õѧÕß¡£
¾³£Íü¼Ç³£ÓõÄDML»òÊÇDDL SQL Óï¾ä¡£
ÔÚ¶àÈË¿ª·¢Î¬»¤µÄSQLÖУ¬Ã¿¸öÈ˶¼ÓÐ×Ô¼ºµÄSQLϰ¹ß£¬Ã»ÓÐÒ»Ì×ͳһµÄ¹æ·¶¡£
ÔÚSQL Server Management StudioÖУ¬ÒѾ¸ø´ó¼ÒÌṩÁ˺ܶೣÓõÄÏÖ³ÉSQL¹æ·¶Ä£°å¡£
SQL Server Management ......
sqlÓï¾ä´óÈ«:³£Óà SQL Óï¾ä´óÈ«
¡¡¡¡Óï ¾ä ¹¦ ÄÜ
¡¡¡¡--Êý¾Ý²Ù×÷
¡¡¡¡SELECT --´ÓÊý¾Ý¿â±íÖмìË÷Êý¾ÝÐкÍÁÐ
¡¡¡¡INSERT --ÏòÊý¾Ý¿â±íÌí¼ÓÐÂÊý¾ÝÐÐ
¡¡¡¡DELETE --´ÓÊý¾Ý¿â±íÖÐɾ³ýÊý¾ÝÐÐ
¡¡¡¡UPDATE --¸üÐÂÊý¾Ý¿â±íÖеÄÊý¾Ý
¡¡¡¡--Êý¾Ý¶¨Òå
¡¡¡¡CREATE TABLE --´´½¨Ò»¸öÊý¾Ý¿â±í
¡¡¡¡DROP TABLE --´ÓÊý¾Ý¿âÖÐɾ³ý±í ......
ÔÚSQL ServerÖгöÓÚÊý¾Ý°²È«µÄ¿¼ÂÇ£¬ËùÒÔÐèÒª¶¨ÆÚµÄ±¸·ÝÊý¾Ý¿â¡£¶ø±¸·ÝÊý¾Ý¿âÒ»°ãÓÖÊÇÔÚÁ賿ʱ¼ä»ù±¾Ã»ÓÐÊý¾Ý¿â²Ù×÷µÄʱºò½øÐУ¬ËùÒÔÎÒÃDz»¿ÉÄÜÒªÇó¹ÜÀíԱÿÌìÊØµ½ÍíÉÏ1µãÈ¥±¸·ÝÊý¾Ý¿â¡£ÒªÊµÏÖÊý¾Ý¿âµÄ¶¨Ê±×Ô¶¯±¸·Ý£¬×î³£Óõķ½Ê½¾ÍÊÇʹÓÃSQL Server´úÀíÖеÄ×÷Òµ¡£Æô¶¯SQL Server Agent·þÎñ£¬È»ºóÔÚÆäÖÐн¨×÷Òµ£¬×÷ÒµÖÐÌí¼ ......
declare @str varchar(8000),@sql varchar(8000)
set @str=''
select @str=@str+','+name from syscolumns WHERE ID=OBJECT_ID('±íÃû') AND NAME!='ÒªÅųýµÄÁÐÃû'
set @str=stuff(@str,1,1,'')
set @sql='select '+@str+' from ±íÃû'
exec (@sql) ......