SQL ServerÁ¬½ÓÌåϵ½á¹¹µÄ¿Í»§¶Ë(2)
Á¬½ÓÄÚ´æ
¡¡¡¡SQL Server Ϊ¿Í»§¶ËÇëÇóµÄÿ¸öÁ¬½Ó±£ÁôÈý¸öÊý¾Ý°ü»º³åÇø¡£Ã¿¸ö»º³åÇøµÄ´óСȡ¾öÓÚ sp_configure ´æ´¢¹ý³ÌÖ¸¶¨µÄĬÈÏÍøÂçÊý¾Ý°ü´óС¡£Èç¹ûĬÈÏÍøÂçÊý¾Ý°ü´óССÓÚ 8 KB£¬ÔòÕâЩÊý¾Ý°üµÄÄڴ潫ÓÉ SQL Server µÄ»º³å³ØÌṩ¡£·ñÔò£¬¸ÃÄڴ潫ÓÉ SQL Server µÄ MemToLeave ÇøÓò·ÖÅä¡£
¡¡¡¡ÖµµÃÒ»ÌáµÄÊÇ£¬.NET Framework Data Provider for SQL Server µÄĬÈÏÍøÂçÊý¾Ý°ü´óСΪ 8KB£¬Òò´Ë£¬ÓëÍйܴúÂë¿Í»§¶ËÁ¬½Ó¹ØÁªµÄ»º³åÇøͨ³£ÓÉ SQL Server µÄ MemToLeave ÇøÓòÌṩ¡£¶øµäÐ굀 ADO Ó¦ÓóÌÐòÈ´²»Í¬£¬ËüÃǵÄĬÈÏÊý¾Ý°ü´óСΪ 4 KB£¬Òò´Ë»º³åÇø½«ÓÉ SQL Server »º³å³Ø·ÖÅä¡£
ʼþ
¡¡¡¡Á¬½ÓºóµÄ¿Í»§¶ËÇëÇóͨ³£·ÖΪÁ½Öֹ㷺Àà±ð£ºÓïÑÔʼþºÍÔ¶³Ì¹ý³Ìµ÷Ó᣾¡¹Ü»¹´æÔÚÆäËûÀà±ð£¬µ«´ó¶àÊýÓÉ SQL Server ¿Í»§¶Ë·¢Ë͵½·þÎñÆ÷µÄÇëÇóÓÉÒÔÏÂÁ½ÖÖÀàÐÍÖ®Ò»¹¹³É£ºÓïÑÔʼþÊÇ´Ó¿Í»§¶Ë·¢Ë͵½·þÎñÆ÷µÄ Ò»×é T-SQL¡£ÀýÈ磬Èç¹ûµ÷Óà ADO Command ¶ÔÏó£¨Æä CommandText ÊôÐÔÉèÖÃΪ T-SQL ²éѯ£¬CommandType ÊôÐÔÉèÖÃΪ adCmdText£©µÄ Execute ·½·¨£¬Ôò²éѯ½«×÷ΪÓïÑÔʼþÌá½»¸ø·þÎñÆ÷¡£Í¬Ñù£¬Èç¹û½« CommandType ÉèÖÃΪ adCmdTable ²¢µ÷Óà Execute ·½·¨£¬Ôò ADO ½«Éú³ÉÒ»¸öÄÚ²¿²éѯ£¨Ëü½«Ñ¡Ôñ CommandText ÊôÐÔ±êʶµÄ±íÖеÄËùÓÐÁУ©£¬²¢½«Ëü×÷ΪÓïÑÔʼþÌá½»¸ø·þÎñÆ÷¡£ÁíÒ»·½Ã棬Èç¹û½« CommandType ÉèÖÃΪ adStoredProc£¬Ôòµ÷Óà Execute ½«Ê¹ ADO Ïò·þÎñÆ÷Ìá½»Ò»¸öÔ¶³Ì¹ý³Ìµ÷ÓÃÇëÇó£¬ÒÔÖ´ÐÐ CommandText ÊôÐÔÖÐÁгöµÄ´æ´¢¹ý³Ì¡£
¡¡¡¡ÎªºÎÒª¹ØÐĽ«ÇëÇó×÷ΪÓïÑÔʼþ»¹ÊÇ×÷Ϊ RPC Ìá½»¸ø·þÎñÆ÷ÄØ£¿Í¨³££¬ÕâÊÇÒòΪ RPC µÄ¹¦ÄܸüΪ³öÉ«£¬ÌرðÊÇÔÚÖظ´µ÷ÓþßÓв»Í¬É¸Ñ¡ÖµµÄͬһ²éѯʱ¡£¾¡¹Ü SQL Server ¿ÉÒÔ×Ô¶¯½«ÆÕͨµÄÓïÑÔʼþÇëÇó²ÎÊý»¯£¬µ«ÕâÖÖÄÜÁ¦·Ç³£ÓÐÏÞ¡£Ëü´Ó²»³¢ÊÔ×Ô¶¯½«Ä³Ð©ÀàÐ͵IJéѯ²ÎÊý»¯¡£Õâ¿ÉÄܻᵼÖ»ù±¾ÏàͬµÄ²éѯ²úÉú²»Í¬µÄÖ´ÐУ¬´Ó¶øÖ»ÒòΪÕâЩ²»Í¬µÄÖ´ÐÐÌṩ²»Í¬µÄÖµ£¬¶øµ¼ÖÂÔÚ·þÎñÆ÷ÉÏ°×°×À˷Ѽƻ®±àÒëµÄ³É±¾¡£Õâͨ³£²»ÊÇÄúËùÏ£ÍûµÄ½á¹û - ÄúÏ£ÍûÕë¶Ô²éѯµÄµÚÒ»´ÎÖ´ÐбàÒëÒ»¸öеļƻ®£¬È»ºó½«¸Ã¼Æ»®Öظ´ÓÃÓÚ¾ßÓв»Í¬²ÎÊýµÄÖ´ÐС£
¡¡¡¡¶ø RPC Ôòͨ¹ýÏÔʽ²ÎÊý»¯²éѯ£¨¶ø²»ÊÇÒÀÀµ·þÎñÆ÷²ÎÊý»¯²éѯ£©À´Ö§³Ö¼Æ»®Öظ´Ê¹Óá£Îª¹ý³ÌµÄµÚÒ»´ÎÖ´ÐÐÉú³ÉÒ»¸ö¼Æ»®ºó£¬ËæºóµÄÖ´Ðн«×Ô¶¯Öظ´Ê¹Óøüƻ®£¬¼´Ê¹ËüÃÇÌṩµÄ²ÎÊýÖµ²»Í¬¡£Óëͨ¹ýÓïÑÔʼþµ÷Óô洢¹ý³ÌÏà±È£¬Ê¹Óà RPC µ÷Óô洢¹ý³Ì²»½ö½ÚÊ¡Á˼ƻ®±àÒëËùÐèµÄÖ´ÐÐʱ¼äºÍ CPU ×ÊÔ´£¬»¹ÔöÇ¿ÁË SQL Server ÄÚ´æ×ÊÔ´µÄÀûÓÃÂÊ£¬ÒòΪËü±ÜÃâÁËÈßÓàÖ´ÐмÆ