ʹÓÃ×Ô¶¨Òå±íÀàÐÍ£¨SQL Server 2008£©
ʹÓÃ×Ô¶¨Òå±íÀàÐÍ£¨SQL Server 2008£©
http://tech.ddvip.com 2009Äê09ÔÂ19ÈÕ À´Ô´£º²©¿ÍÔ° ×÷Õߣº³ÂÏ£ÕÂ
¡¡¡¡ÔÚ SQL Server 2008 ÖУ¬Óû§¶¨Òå±íÀàÐÍÊÇÖ¸Óû§Ëù¶¨ÒåµÄ±íʾ±í½á¹¹¶¨ÒåµÄÀàÐÍ¡£Äú¿ÉÒÔʹÓÃÓû§¶¨Òå±íÀàÐÍΪ´æ´¢¹ý³Ì»òº¯ÊýÉùÃ÷±íÖµ²ÎÊý£¬»òÕßÉùÃ÷ÄúÒªÔÚÅú´¦ÀíÖлòÔÚ´æ´¢¹ý³Ì»òº¯ÊýµÄÖ÷ÌåÖÐʹÓõıí±äÁ¿¡£ÓйØÈçºÎ¶¨Òå±í½á¹¹µÄÏêϸÐÅÏ¢£¬Çë²ÎÔÄ CREATE TABLE (Transact-SQL)¡£
¡¡¡¡ÈôÒª´´½¨Óû§¶¨Òå±íÀàÐÍ£¬ÇëʹÓà CREATE TYPE Óï¾ä¡£ÎªÁËÈ·±£Óû§¶¨Òå±íÀàÐ͵ÄÊý¾ÝÂú×ãÌØ¶¨ÒªÇó£¬Äú¿ÉÒÔ¶ÔÓû§¶¨Òå±íÀàÐÍ´´½¨Î¨Ò»Ô¼ÊøºÍÖ÷¼ü¡£
¡¡¡¡ÓйØÓëÓû§¶¨ÒåÀàÐÍÏà¹ØÁªµÄĿ¼ÊÓͼµÄÐÅÏ¢£¬Çë²ÎÔÄ sys.types ºÍ sys.table_types¡£
¡¡¡¡ÏÞÖÆ
¡¡¡¡Óû§¶¨Òå±íÀàÐ;ßÓÐÏÂÁÐÏÞÖÆ£º
¡¡¡¡Óû§¶¨Òå±íÀàÐͲ»ÄÜÓÃ×÷±íÖеÄÁлò½á¹¹»¯Óû§¶¨ÒåÀàÐÍÖеÄ×ֶΡ£
¡¡¡¡»ùÓÚÓû§¶¨Òå±íÀàÐ͵ıðÃûÀàÐÍ
¡¡¡¡[NOT FOR REPLICATION] Ñ¡ÏîÊDz»ÔÊÐíµÄ¡£
¡¡¡¡CHECK Ô¼ÊøÒªÇó±£Áô¼ÆËãÁС£
¡¡¡¡¼ÆËãÁеÄÖ÷¼ü±ØÐëÊÇ PERSISTED ºÍ NOT NULL¡£
¡¡¡¡ÎÞ·¨¶ÔÓû§¶¨Òå±íÀàÐÍ´´½¨·Ç¾Û¼¯Ë÷Òý£¬³ý·Ç¸ÃË÷ÒýÊǶÔÓû§¶¨Òå±íÀàÐÍ´´½¨ PRIMARY KEY »ò UNIQUE Ô¼ÊøµÄ½á¹û¡££¨SQL Server ʹÓÃË÷ÒýÇ¿ÖÆÊµÊ©ÈκΠUNIQUE »ò PRIMARY KEY Ô¼Êø¡££©
¡¡¡¡²»ÄÜÔÚÓû§¶¨Òå±íÀàÐ͵͍ÒåÖÐÖ¸¶¨ DEFAULT Öµ¡£
¡¡¡¡ÔÚ´´½¨Óû§¶¨Òå±íÀàÐͶ¨Òåºó²»ÄÜ¶ÔÆä½øÐÐÐ޸ġ£
¡¡¡¡²»ÄÜÔÚÓû§¶¨Òå±íÀàÐ͵ļÆËãÁе͍ÒåÖе÷ÓÃÓû§¶¨Ò庯Êý¡£
¡¡¡¡°²È«ÐÔ
¡¡¡¡Óû§¶¨Òå±íÀàÐ͵ÄȨÏÞͨ¹ýʹÓÃÏÂÁÐ Transact-SQL ¹Ø¼ü×ÖÀ´×ñÑ SQL Server µÄ¶ÔÏó°²È«Ä£Ê½£ºCREATE¡¢GRANT¡¢DENY¡¢ALTER¡¢CONTROL¡¢TAKE OWNERSHIP¡¢REFERENCES¡¢EXECUTE¡¢VIEW DEFINITION ºÍ REVOKE¡£
¡¡¡¡ÏÂÃæÎÒÓÃÒ»¸öʵÀýÀ´½²½âÒ»ÏÂ
--¡¡================================
--¡¡´´½¨ºÍʹÓÃ×Ô¶¨Òå±íÀàÐÍ
--¡¡³ÂÏ£ÕÂ
--¡¡================================¡¡
USE¡¡master
GO
--¡¡================================
--¡¡´´½¨²âÊÔÊý¾Ý¿â
--¡¡================================
CREATE¡¡DATABASE¡¡demo
GO¡¡
--¡¡================================
--¡¡´´½¨Ò»¸ö±í
--¡¡================================
USE¡¡demo
GO¡¡
CREATE¡¡TABLE¡¡Customers
(
¡¡¡¡¡¡¡¡Id¡¡int¡¡NOT¡¡NULL,¡¡
¡¡¡¡¡¡¡¡Name¡¡char(10)¡¡NULL,¡¡
¡¡¡¡¡¡¡¡PRIMARY¡¡KEY¡¡(Id)
)
GO¡¡
USE¡¡d
Ïà¹ØÎĵµ£º
select * from tt t inner loop join ss s with(nolock) on s.c=t.c
ʹÓà nested join
select * from tt t inner merge join ss s with(nolock) on s.c=t.c
ʹÓà merge join
select * from tt t inner hash join ss s with(nolock) on s.c=t.c
ʹÓà hash jion
&n ......
SQL ServerµÄһЩϵͳ±äÁ¿
sp_configure 'min server memory' --·þÎñÆ÷×îСÄÚ´ægosp_configure 'max server memory' --·þÎñÆ÷×î´óÄÚ´æ'gosp_configure 'index create memory'--´´½¨Ë÷ÒýÕ¼ÓõÄÄÚ´ægo--sp_configure 'min memory per query'--ÿ´Î²éѯռÓõÄ×îСÄÚ´æ
--»ñÈ¡I/O¹¤×÷Çé¿öselect -- @@id_bus ......
-- ˵Ã÷:
-- 1. Ҫɾ³ý±í table_name, ÐëÏÈÅжϸñíÊÇ·ñÕý±»Êý¾Ý¿âÖÐÆäËü±íËùÒýÓÃ.
-- 2. Èç¹ûδ±»ÒýÓÃ, ¿ÉÖ±½Ó DROP TABLE table_name; ·ñÔò±ØÐëÏÈɾ³ýÒýÓñíµÄÔ¼Êø, ÔÙ DROP TABLE table_name.
-- 3. ÁíÍâ, table_name ÊÇ·ñÕýÒýÓÃÆäËü±íµÄÇé¿öÎÞÐ뿼ÂÇ.
-- ´´½¨Ö÷±í
CREATE TABLE tParent
......
SQL Server 2008ÖеıíÖµÐͲÎÊý
×÷ÕߣºAl Tenhundfeld ÒëÕß Õź£Áú¡¡
±íÖµÐͲÎÊý£¨Table-valued parameters£©ÊÇSQL Server 2008ÖÐÒýÈëµÄÒ»ÖÖÐÂÌØÐÔ£¬ËüÌṩÁËÒ»ÖÖÄÚÖõķ½Ê½£¬Èÿͻ§¶ËÓ¦ÓÿÉÒÔֻͨ¹ýµ¥¶ÀµÄÒ»Ìõ²Î»¯ÊýSQLÓï¾ä£¬¾Í¿ÉÒÔÏòSQL Server·¢ËͶàÐÐÊý¾Ý¡£
±íÖ ......