Ö´Ðлº´æÒÔÓÅ»¯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¡£
 
Ïà¹ØÎĵµ£º
Æäʵɾ³ýÊý¾Ý¿âÖÐÊý¾ÝµÄ·½·¨²¢²»¸´ÔÓ£¬ÎªÊ²Ã´ÎÒ»¹Òª¶à´ËÒ»¾ÙÄØ£¬Ò»ÊÇÎÒÕâÀï½éÉܵÄÊÇɾ³ýÊý¾Ý¿âµÄËùÓÐÊý¾Ý£¬ÒòΪÊý¾ÝÖ®¼ä¿ÉÄÜÐγÉÏà»¥Ô¼Êø¹ØÏµ£¬É¾³ý²Ù×÷¿ÉÄÜÏÝÈëËÀÑ»·£¬¶þÊÇÕâÀïʹÓÃÁË΢ÈíδÕýʽ¹«¿ªµÄsp_MSForEachTable´æ´¢¹ý³Ì¡£
Ò²ÐíºÜ¶à¶ÁÕßÅóÓѶ¼¾Àú¹ýÕâÑùµÄÊÂÇ飺ҪÔÚ¿ª·¢Êý¾Ý¿â»ù´¡ÉÏÇåÀíÒ»¸ö¿Õ¿â£¬µ«ÓÉÓÚ¶ÔÊý¾Ý¿ ......
Microsoft SQL Server 2008 ¶Ô T-SQL ÓïÑÔ½øÐÐÁ˽øÒ»²½ÔöÇ¿¡£ÎªÁËÈÿª·¢ÈËÔ±¾¡¿ìÁ˽âÕâЩ±ä»¯£¬ÎÒÃÇÕë¶Ô 2007 Äê 6 Ô CTP °æ±¾µÄ SQL Server 2008 ÖÐµÄ T-SQL ÓïÑÔµÄÐÂÔö¹¦ÄܽøÐÐÁË·ÖÎöºÍ³¢ÊÔ¡£±¾ÎÄÃèÊö×Ô SQL Server 2008 CTP1 ÒÔÀ´ÕâЩÓïÑÔÔöÇ¿ºÍ±ä»¯¡£
¡¡¡¡±¾Îİüº¬ÈçÏÂÄÚÈÝ£º
¡¡¡¡· T-SQL Ðй¹ÔìÆ÷
¡¡¡¡&mid ......
select ks.login_name,ks.exam_name,ks.start_time,ks.end_time,cj.score
from (
select u.user_id,u.login_name,e.* from cphrms.EXAM_USER eu, cphrms.users u, cphrms.exam_info e
where eu.user_id = u.user_id and eu.exam_id = e.exam_id
) ks
left ......
Student(S#,Sname,Sage,Ssex) ѧÉú±í
Course(C#,Cname,T#) ¿Î³Ì±í
SC(S#,C#,score) ³É¼¨±í
Teacher(T#,Tname) ½Ìʦ±í
ÎÊÌ⣺
1¡¢²éѯ“001”¿Î³Ì±È“002”¿Î³Ì³É¼¨¸ßµÄËùÓÐѧÉúµÄѧºÅ£»
select a.S# from (select s#,score from SC where C#='001') a,(select s#,score
fr ......
×î½üÒ»Ö±ÔÚÓÃjavascriptÔÚ×öÏîÄ¿
¿ÉÊÇ×ö×Å×ö×Å
¸Ð¾õºÜ¶à¹¦ÄÜ´úÂë¶¼ÊÇÖØ¸´µÄ¡£
±ÈÈç¶ÔjavascriptÊý×éµÄÅÅÐò
»¹ÓжÔÊý×éÊý¾ÝµÄɾѡÒÔ¼°·Ö×é
ËùÒÔ£¬ºóÀ´ÐËÖÂÒÔÉÏÀ´¡£
Ò»·¢²»¿ÉÊÕʰ¡£
дÁËÒ»¸öÄÜÔÚjavascriptÖÐÓ¦ÓÃµÄ SQL ¿â
ºóÀ´ÓÖÏ룬Ôõô²»ÄÜÓÃjavascriptÖ±½ÓÁ¬½ÓÊý¾Ý¿âÄØ£¿
ÓÖ×öÁËÒ»¸öjavascriptÖ±Á¬SqlÊý¾ÝµÄÀà¿â ......