Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Ö´Ðлº´æÒÔÓÅ»¯SQL ServerµÄÄÚ´æÕ¼ÓÃ

×÷Õߣºsuperhasty
  2007-11-29
ÔÚÂÛ̳Éϳ£¼ûÓÐÅóÓѱ§Ô¹£¬ËµSQL ServerÌ«³ÔÄÚ´æÁË¡£ÕâÀï±ÊÕ߸ù¾Ý¾­Ñé¼òµ¥½éÉÜÒ»ÏÂÄÚ´æÏà¹ØµÄµ÷ÓÅ֪ʶ¡£Ê×ÏÈ˵Ã÷Ò»ÏÂSQL
ServerÄÚ´æÕ¼ÓÃÓÉÄ¿·Ö×é³É¡£SQL ServerÕ¼ÓõÄÄÚ´æÖ÷ÒªÓÉÈý²¿·Ö×é³É£ºÊý¾Ý»º´æ(Data
Buffer)¡¢Ö´Ðлº´æ(Procedure Cache)¡¢ÒÔ¼°SQL ServerÒýÇæ³ÌÐò¡£SQL
ServerÒýÇæ³ÌÐòËùÕ¼Óûº´æÒ»°ãÏà¶Ô±ä»¯²»´ó£¬ÔòÎÒÃǽøÐÐÄÚ´æµ÷ÓŵÄÖ÷Òª×ÅÑÛµãÔÚÊý¾Ý»º´æºÍÖ´Ðлº´æµÄ¿ØÖÆÉÏ¡£±¾ÎÄÖ÷Òª½éÉÜÒ»ÏÂÖ´Ðлº´æµÄµ÷ÓÅ¡£Êý¾Ý
»º´æµÄµ÷ÓŽ«ÔÚÁíÍâµÄÎÄÕÂÖнéÉÜ¡£
    ¶ÔÓÚ¼õÉÙÖ´Ðлº´æµÄÕ¼Óã¬Ö÷Òª¿ÉÒÔͨ¹ýʹÓòÎÊý»¯²éѯ¼õÉÙÄÚ´æÕ¼Óá£
    1¡¢Ê¹ÓòÎÊý»¯²éѯ¼õÉÙÖ´Ðлº´æÕ¼ÓÃ
ÎÒÃÇͨ¹ýÈçÏÂÀý×ÓÀ´ËµÃ÷Ò»ÏÂʹÓòÎÊý»¯²éѯ¶Ô»º´æÕ¼ÓõÄÓ°Ï졣Ϊ·½±ãÊÔÑ飬ÎÒÃÇʹÓÃÁËһ̨ûÓÐÆäËü¸ºÔصÄSQL Server½øÐÐÈçÏÂʵÑé¡£
    ÏÂÃæµÄ½Å±¾Ñ­»·Ö´ÐÐÒ»¸ö¼òµ¥µÄ²éѯ£¬¹²Ö´ÐÐ10000´Î¡£ 
    Ê×ÏÈ£¬ÎÒÃÇÇå¿ÕÒ»ÏÂSQL ServerÒѾ­Õ¼ÓõĻº´æ£º
    dbcc freeproccache
    È»ºó£¬Ö´Ðнű¾£º
DECLARE

@t

datetime
SET

@t

=

getdate
()
SET
NOCOUNT
ON
DECLARE

@i

INT
,
@count

INT
,
@sql

nvarchar
(
4000
)
SET

@i

=

20000
WHILE

@i

<=

30000
BEGIN
SET

@sql

=

'
SELECT @count=count(*) from P_Order WHERE MobileNo =
'

+

cast
(
@i

as

varchar
(
10
) )
EXEC
sp_executesql
@sql
,N
'
@count INT OUTPUT
'
,
@count
OUTPUT
SET

@i

=

@i

+

1
END
PRINT

DATEDIFF
( second,
@t
,
current_timestamp
)
    Êä³ö£º
DBCC Ö´ÐÐÍê±Ï¡£Èç¹û DBCC Êä³öÁË´íÎóÐÅÏ¢£¬ÇëÓëϵͳ¹ÜÀíÔ±ÁªÏµ¡£
    11
    ʹÓÃÁË11ÃëÍê³É10000´Î²éѯ¡£
    ÎÒÃÇ¿´Ò»ÏÂSQL Server»º´æÖÐËùÕ¼ÓõIJéѯ¼Æ»®£º
Select

Count
(
*
) CNT,
sum
(size_in_bytes) TotalSize
from
sys.dm_exec_cached_plans
    ²éѯ½á¹û£º¹²ÓÐ2628ÌõÖ´Ðмƻ®»º´æÔÚSQL ServerÖС£ËüÃÇËùÕ¼ÓõĻº´æ´ïµ½£º
    92172288×Ö½Ú = 90012KB = 87 MB¡£
 


Ïà¹ØÎĵµ£º

SQL Server´æ´¢¹ý³ÌÖÐraiserrorµÄʹÓÃ


Ò» ϵͳԤ¶¨Òå´íÎó´úÂë
SQL Server ÓÐ3831¸öÔ¤¶¨Òå´íÎó´úÂ룬ÓÉmaster.dbo.sysmessages±íά»¤¡£Ã¿Ò»¸ö´íÎó´úÂë¶¼ÓÐÏàÓ¦µÄ¼¶±ðºÍÃèÊö¡£
´íÎó¶¨ÒåµÄ¼¶±ð´Ó0µ½25¡£20ÒÔÉϵĴíÎó´ú±íÖØ´ó´íÎó£¬Í¨³£ÒâζןôíÎó»áµ¼Ö´洢½ø³ÌÁ¢¿ÌÖÕÖ¹£¬²¢ÇÒËùÓеĿͻ§Á¬½Ó¶¼ÒªÖØÐ³õʼ»¯¡£
·Ç¹Ø¼üÐÔ´íÎóÖ»ÊǽûÖ¹µôµ±Ç°ÔËÐеijÌÐòÐУ¬²¢¼Ì ......

½²½âMSSQLÊý¾Ý¿âÖÐSQLËø»úÖÆºÍÊÂÎñ¸ôÀë¼¶±ð

Ëø»úÖÆ
NOLOCKºÍREADPASTµÄÇø±ð¡£
1. ¿ªÆôÒ»¸öÊÂÎñÖ´ÐвåÈëÊý¾ÝµÄ²Ù×÷¡£
BEGIN TRAN t
INSERT INTO Customer
SELECT 'a','a'
2. Ö´ÐÐÒ»Ìõ²éѯÓï¾ä¡£
SELECT * from Customer WITH (NOLOCK)
½á¹ûÖÐÏÔʾ"a"ºÍ"a"¡£µ±1ÖÐÊÂÎñ»Ø¹öºó£¬ÄÇôa½«³ÉΪÔàÊý¾Ý¡£(×¢:1ÖеÄÊÂÎñδÌá½») ¡£NOLOCK±íÃ÷ûÓжÔÊý¾Ý±íÌí¼Ó¹²Ï ......

SQLÈ¡³öµÚ m Ìõµ½µÚ n Ìõ¼Ç¼µÄ·½·¨

´ÓTable ±íÖÐÈ¡³öµÚ m Ìõµ½µÚ n ÌõµÄ¼Ç¼£º(Not In °æ±¾)
SELECT TOP n-m+1 *
  from Table
  WHERE (id NOT IN (SELECT TOP m-1 id from Table ))
--´ÓTABLE±íÖÐÈ¡³öµÚmµ½nÌõ¼Ç¼ (Exists°æ±¾)
SELECT TOP n-m+1 * from TABLE AS a WHERE Not Exists
(Select * from (Select Top m-1 * from TABLE orde ......

SQL¸ß¼¶Ó¦Óà Garin Zhang

×·¼Ó£ºrow_number, rank, dese_rank, ntile
1. row_number: Ϊ²éѯ³öÀ´µÄÿһÐмǼÉú³ÉÒ»¸öÐòºÅ¡£
SELECT row_number() OVER(ORDER BY field) AS row_n
from tablename;
·ÖÒ³²éѯ£º
with t_towtable
as (select row_number over(order by field1) as row_number from tb)
select * from t_rowtable where row_numbe ......

SQLÓï¾äÔÚJavaScriptÖеÄÓ¦ÓÃ

×î½üÒ»Ö±ÔÚÓÃjavascriptÔÚ×öÏîÄ¿
¿ÉÊÇ×ö×Å×ö×Å
¸Ð¾õºÜ¶à¹¦ÄÜ´úÂë¶¼ÊÇÖØ¸´µÄ¡£
±ÈÈç¶ÔjavascriptÊý×éµÄÅÅÐò
»¹ÓжÔÊý×éÊý¾ÝµÄɾѡÒÔ¼°·Ö×é
ËùÒÔ£¬ºóÀ´ÐËÖÂÒÔÉÏÀ´¡£
Ò»·¢²»¿ÉÊÕʰ¡£
дÁËÒ»¸öÄÜÔÚjavascriptÖÐÓ¦ÓÃµÄ SQL ¿â
ºóÀ´ÓÖÏ룬Ôõô²»ÄÜÓÃjavascriptÖ±½ÓÁ¬½ÓÊý¾Ý¿âÄØ£¿
ÓÖ×öÁËÒ»¸öjavascriptÖ±Á¬SqlÊý¾ÝµÄÀà¿â ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ