ÉèΪÊ×Ò³ ¼ÓÈëÊÕ²Ø

TOP

SQL Server2012ÖеÄSequenceNumber³¢ÊÔ
2014-11-24 07:22:44 À´Ô´: ×÷Õß: ¡¾´ó ÖРС¡¿ ä¯ÀÀ:2´Î
Tags£ºSQL Server2012 SequenceNumber ³¢ÊÔ

¼ò½é
SequenceNumberÊÇSQL Server2012ÍÆ³öµÄÒ»¸öÐÂÌØÐÔ¡£Õâ¸öÌØÐÔÔÊÐíÊý¾Ý¿â¼¶±ðµÄÐòÁкÅÔÚ¶à±í»ò¶àÁÐÖ®¼ä¹²Ïí¡£¶ÔÓÚijЩ³¡¾°»á·Ç³£ÓÐÓ㬱ÈÈ磬ÄãÐèÒªÔÚ¶à¸ö±íÖ®¼ä¹«ÓÃÒ»¸öÁ÷Ë®ºÅ¡£ÒÔÍùµÄ×ö·¨ÊǶîÍ⽨Á¢Ò»¸ö±í£¬È»ºó´æ´¢Á÷Ë®ºÅ¡£¶øÐ²åÈëµÄÁ÷Ë®ºÅÐèÒªÁ½¸ö²½Ö裺
1.²éѯ±íÖÐÁ÷Ë®ºÅµÄ×î´óÖµ
2.²åÈëÐÂÖµ£¨×î´óÖµ+1£©
ÏÖÔÚ£¬ÀûÓÃSQL Server2012ÖеÄSequence.ÕâÀà²Ù×÷½«»á±äµÃ·Ç³£ÈÝÒס£

SequenceNumberµÄ»ù±¾¸ÅÄî
SequenceNumberµÄ¸ÅÄî²¢²»ÊÇÒ»¸öиÅÄOracleÔç¾ÍÒѾ­ÊµÏÖÁË£¨http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_6015.htm£©¡£ÓëÒÔÍùµÄIdentityÁв»Í¬µÄÊÇ¡£SequenceNumberÊÇÒ»¸öÓë¹¹¼Ü°ó¶¨µÄÊý¾Ý¿â¼¶±ðµÄ¶ÔÏ󣬶ø²»ÊÇÓë¾ßÌåµÄ±íµÄ¾ßÌåÁÐËù°ó¶¨¡£ÕâÒâζ×ÅSequenceNumber´øÀ´¶à±íÖ®¼ä¹²ÏíÐòÁкŵıéÀúÖ®Í⣬»¹»á´øÀ´Èçϲ»ÀûÓ°Ïì:
ÓëIdentityÁв»Í¬µÄÊÇ£¬Sequence²åÈë±íÖеÄÐòÁкſÉÒÔ±»Update,³ý·Çͨ¹ý´¥·¢Æ÷À´½øÐб£»¤
ÓëIdentityÁв»Í¬£¬SequenceÓпÉÄܲåÈëÖØ¸´Öµ£¨¶ÔÓÚÑ­»·SequenceNumberÀ´Ëµ£©
Sequence½ö½ö¸ºÔð²úÉúÐòÁкţ¬²¢²»¸ºÔð¿ØÖÆÈçºÎʹÓÃÐòÁкţ¬Òò´Ëµ±Éú³ÉÒ»¸öÐòÁкű»RollbackÖ®ºó£¬Sequence»á¼ÌÐøÉú³ÉÏÂÒ»¸öºÅ£¬´Ó¶øÔÚÐòÁкÅÖ®¼ä²úÉú¼ä϶¡£

SequenceNumberµÄÓ÷¨
SequenceNumberÔÚMSDNÖж¨ÒåµÄÔ­ÐÍÈç´úÂë1Ëùʾ¡£
CREATE SEQUENCE [schema_name . ] sequence_name
[ AS [ built_in_integer_type | user-defined_integer_type ] ]
[ START WITH ]
[ INCREMENT BY ]
[ { MINVALUE [ ] } | { NO MINVALUE } ]
[ { MAXVALUE [ ] } | { NO MAXVALUE } ]
[ CYCLE | { NO CYCLE } ]
[ { CACHE [ ] } | { NO CACHE } ]
[ ; ]

´úÂë1.SequenceµÄ´´½¨Ô­ÐÍ

ÓÉ´úÂë1¿´ÒÔ¿´µ½,²ÎÊýÏà¶Ô±È½Ï¼òµ¥¡£´ÓÖ¸¶¨Êý¾ÝÀàÐÍ£¨INT¼æÈÝ£©µ½¿ªÊ¼¼ÆÊýµã£¬²½³¤£¬×î´óÖµºÍ×îСֵ£¬ÊÇ·ñÑ­»·ºÍÊÇ·ñ»º´æ¼¸¸ö²ÎÊýÀ´ÉèÖÃSequence¡£
ÏÂÃæÍ¼1´´½¨ÁËÒ»¸ö¼òµ¥µÄSequence¡£


ͼ1.´´½¨Ò»¸ö¼òµ¥µÄSequence²¢½øÐÐʹÓÃ

´Ëʱ£¬ÎÒÃÇ¿ÉÒÔͨ¹ýSQL Server 2012ÐÂÔöµÄÊÓͼsys.sequencesÀ´¿´µ½¸Õ²Å´´½¨³É¹¦µÄSequence,Èçͼ2Ëùʾ.


ͼ2.sys.sequencesÊÓͼ

µ±È»ÎÒÃÇ¿ÉÒÔÕâ¸öÐòÁа´ÕÕ˳Ðò²åÈë±í,Èçͼ3Ëùʾ¡£


ͼ3.ÔÚµ¥±íÖвåÈëÐòÁÐ

¶øSequenceNumber×îÖØÒªµÄ¹¦ÄÜÊÇÔÚ¶à±í¼ä¹²ÏíÐòÁкţ¬Èçͼ4Ëùʾ¡£


ͼ4.¶à±íÖ®¼äÀûÓÃSequence¹²ÏíÐòÁкÅ

Ç°ÃæÍ¼2¿ÉÒÔ¿´µ½£¬Èç¹ûÎÒÃDz»Ö¸¶¨SequenceµÄÉÏÏÞºÍÏÂÏÞ£¬ÔòĬÈÏʹÓÃËùÖ¸¶¨Êý¾ÝÀàÐ͵Ä×î´óÖµºÍ×îСֵ×÷ΪÉÏÏÞºÍÏÂÏÞ£¨Èçͼ2INTÀàÐ͵ĵÄÉÏÏÂÏÞ£©.µ±´ïµ½ÉÏÏߺ󣬿ÉÒÔÖ¸¶¨Ñ­»·À´ÈÃSequence´ïµ½ÉÏÏÞºó´ÓÖ¸¶¨µÄ¿ªÊ¼ÖµÖØÐ¿ªÊ¼Ñ­»·¡£Èçͼ5Ëùʾ¡£


ͼ5.SequenceÉèÖÃÉÏÏÞÏÂÏÞºÍÑ­»·

»¹¿ÉÒÔͨ¹ýÐÞ¸ÄSequence½«Æä³õʼֵָ¶¨ÎªÒ»¸öÌØ¶¨Öµ£¬Èçͼ6Ëùʾ¡£


ͼ6.ÖØÖÃSequenceµÄÖµ

SequenceÒ»¸öÐèҪעÒâµÄÇé¿öÊÇSequenceÖ»¸ºÔðÉú³ÉÐòÁкţ¬¶ø²»¹ÜÐòÁкÅÈçºÎʹÓã¬Èç¹ûÊÂÎñ²»³É¹¦»ò»Ø¹ö£¬SequenceNumberÈÔÈ»»á¼ÌÐøÏòºóÉú³ÉÐòÁкÅ,Èçͼ7Ëùʾ¡£


ͼ7.Sequence½ö½ö¸ºÔðÉú³ÉÐòÁкÅ

ÎÒÃÇ»¹¿ÉÒÔΪSequenceÖ¸¶¨»º´æÑ¡ÏʹµÃ¼õÉÙIO£¬±ÈÈ磬ÎÒÃÇÖ¸¶¨CacheÑ¡ÏîΪ4£¬Ôòµ±Ç°µÄSequenceÓÉ1Ôö³¤¹ý4ºó£¬SQL Server»áÔÙ·ÖÅä4¸ö¿Õ¼ä±äΪ´Ó5µ½8£¬µ±·ÖÅäµ½9ʱ£¬SQL Server¼ÌÐøÕâÒÔÑ­»·£¬Èç¹û²»Ö¸¶¨CacheÖµ£¬ÔòÖµÓÉSQL Server½øÐзÖÅä¡£Ò»¸ö¼òµ¥µÄÀý×ÓÈçͼ8Ëùʾ¡£


ͼ8.ΪSequenceÉèÖÃCacheÑ¡Ïî


×ܽá
±¾ÎĽ²ÊöÁËSequenceNumberµÄ¼òµ¥Ó÷¨¡£SequenceÊÇÒ»¸ö±È½Ï·½±ãµÄ¹¦ÄÜ£¬Èç¹ûʹÓÃÍ×µ±£¬½«»á´ó´ó¼õÉÙ¿ª·¢¹¤×÷ºÍÌáÉýÐÔÄÜ¡£


×÷Õß ËÎ ½£

¡¾´ó ÖРС¡¿¡¾´òÓ¡¡¿ ¡¾·±Ìå¡¿¡¾Í¶¸å¡¿¡¾Êղء¿ ¡¾ÍƼö¡¿¡¾¾Ù±¨¡¿¡¾ÆÀÂÛ¡¿ ¡¾¹Ø±Õ¡¿ ¡¾·µ»Ø¶¥²¿¡¿
·ÖÏíµ½: 
ÉÏһƪ£ºÓÃÀý¼¶±ð´æ´¢¹ý³Ì ÏÂһƪ£ºSQL Server|µÚÒ»Ììѧϰ×ܽá

ÆÀÂÛ

ÕÊ¡¡¡¡ºÅ: ÃÜÂë: (ÐÂÓû§×¢²á)
Ñé Ö¤ Âë:
±í¡¡¡¡Çé:
ÄÚ¡¡¡¡ÈÝ:

¡¤Linuxϵͳ¼ò½é (2025-12-25 21:55:25)
¡¤Linux°²×°MySQL¹ý³Ì (2025-12-25 21:55:22)
¡¤Linuxϵͳ°²×°½Ì³Ì£¨ (2025-12-25 21:55:20)
¡¤HTTP Åc HTTPS µÄ²î„ (2025-12-25 21:19:45)
¡¤ÍøÕ¾°²È«±ØÐ޿ΣºÍ¼ (2025-12-25 21:19:42)