SQL ServerÖС°¼ÓËøÑ¡ÏµÄ¹¦ÄÜ˵Ã÷
1 ÈçºÎËøÒ»¸ö±íµÄijһÐÐ
A Á¬½ÓÖÐÖ´ÐÐ
SET TRANSACTION ISOLATION LEVEL REPEATABLE READ
begin tran
select * from tablename with (rowlock) where id=3
waitfor delay '00:00:05'
commit tran
BÁ¬½ÓÖÐÈç¹ûÖ´ÐÐ
update tablename set colname='10' where id=3 --ÔòÒªµÈ´ý5Ãë
update tablename set colname='10' where id<>3 --¿ÉÁ¢¼´Ö´ÐÐ
2 Ëø¶¨Êý¾Ý¿âµÄÒ»¸ö±í
SELECT * from table WITH (HOLDLOCK)
×¢Òâ: Ëø¶¨Êý¾Ý¿âµÄÒ»¸ö±íµÄÇø±ð
SELECT * from table WITH (HOLDLOCK)
ÆäËûÊÂÎñ¿ÉÒÔ¶ÁÈ¡±í£¬µ«²»ÄܸüÐÂɾ³ý
SELECT * from table WITH (TABLOCKX)
ÆäËûÊÂÎñ²»ÄܶÁÈ¡±í,¸üкÍɾ³ý
SELECT Óï¾äÖГ¼ÓËøÑ¡ÏŦÄÜ˵Ã÷
SQL ServerÌṩÁËÇ¿´ó¶øÍ걸µÄËø»úÖÆÀ´°ïÖúʵÏÖÊý¾Ý¿âϵͳµÄ²¢·¢ÐԺ͸ßÐÔÄÜ¡£Óû§¼ÈÄÜʹÓÃSQL ServerµÄȱʡÉèÖÃÒ²¿ÉÒÔÔÚselect Óï¾äÖÐʹÓÓ¼ÓËøÑ¡Ïî”À´ÊµÏÖÔ¤ÆÚµÄЧ¹û¡£ ±¾ÎĽéÉÜÁËSELECTÓï¾äÖеĸ÷ÏÓËøÑ¡Ïî”ÒÔ¼°ÏàÓ¦µÄ¹¦ÄÜ˵Ã÷¡£
¹¦ÄÜ˵Ã÷£º¡¡
NOLOCK£¨²»¼ÓËø£©
´ËÑ¡ÏѡÖÐʱ£¬SQL Server ÔÚ¶ÁÈ¡»òÐÞ¸ÄÊý¾Ý
Ïà¹ØÎĵµ£º
distinctÕâ¸ö¹Ø¼ü×ÖÓÃÀ´¹ýÂ˵ô¶àÓàµÄÖØ¸´¼Ç¼ֻ±£ÁôÒ»Ìõ£¬µ«ÍùÍùÖ»ÓÃËüÀ´·µ»Ø²»Öظ´¼Ç¼µÄÌõÊý£¬¶ø²»ÊÇÓÃËüÀ´·µ»Ø²»ÖؼǼµÄËùÓÐÖµ¡£ÆäÔÒòÊÇdistinctÖ»ÓÐÓöþÖØÑ»·²éѯÀ´½â¾ö£¬¶øÕâÑù¶ÔÓÚÒ»¸öÊý¾ÝÁ¿·Ç³£´óµÄÕ¾À´Ëµ£¬ÎÞÒÉÊÇ»áÖ±½ÓÓ°Ï쵽ЧÂʵġ£
ÏÂÃæÏÈÀ´¿´¿´Àý×Ó£º
table±í
×Ö¶Î1 ×Ö¶ ......
×÷ÕߣºÇñÑó
QQ£º1964477
ËäÈ»ÔÚhibernateÖÐÓÐshow_sqlÑ¡Ïµ«ÊÇÏÔʾ³öÀ´µÄÓï¾ä´ó¶àÀàËÆ
select * from xxx where value=?
µ«ÊÇÓÐʱºòÎÒÃÇÐèÒªµÃµ½ÍêÕûµÄSQLÓï¾ä£¬Ôõô°ìÄØ£¿Ê¹ÓÃP6SPY¾Í¿ÉÒÔÍê³ÉÕâ¸öÈÎÎñ
p6spyÊÇÒ»¸ö¿ªÔ´Èí¼þ£¬Ëü¿ÉÒÔ¸ú ......
ÅäÖÃsql server 2000ÒÔÔÊÐíÔ¶³Ì·ÃÎÊÊʺϹÊÕÏ:1. ÓÃsqlÆóÒµ¹ÜÀíÆ÷ÄÜ·ÃÎÊsql server 2000(ÒòΪËüÊDzÉÓÃÃüÃû¹ÜµÀ(named pipes)·½Ê½½øÐз½Ê½),µ«ÓÃado.net ·½Ê½(udp)²»ÄÜ·ÃÎÊ.2. ²ÉÓÃado.net·½Ê½²»ÄÜÔ¶³Ì·ÃÎÊ.¹ÊÕϵĿÉÄÜÔÒòÓÐ:1.sql server 2000ûÓа²×°sql server 2000 sp3a¼°ÒÔÉÏÉý¼¶°ü,»¹Î´ÆôÓò¢¿ª·Å1433¶Ë¿Ú(udp);2 ......
ÎÒÃÇÒª×öµ½²»µ«»áдSQL,»¹Òª×öµ½Ð´³öÐÔÄÜÓÅÁ¼µÄSQL,ÒÔÏÂΪ±ÊÕßѧϰ¡¢ÕªÂ¼¡¢²¢»ã×ܲ¿·Ö×ÊÁÏÓë´ó¼Ò·ÖÏí£¡
£¨1£© Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)£º
ORACLE µÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬from×Ó¾äÖÐдÔÚ×îºóµÄ±í(»ù´¡±í driving table)½«±»×îÏÈ´¦Àí£¬ÔÚfrom× ......
Óï·¨£º
CREATE [Ë÷ÒýÀàÐÍ] INDEX Ë÷ÒýÃû³Æ
ON ±íÃû(ÁÐÃû)
WITH FILLFACTOR = Ìî³äÒò×ÓÖµ0~100
GO
/*ʵÀý*/
USE ¿âÃû
GO
IF EXISTS
(SELECT * from SYSINDEXES WHERE NAME='IX_TEST_TNAME')--¼ì²âÊÇ·ñÒѾ´æÔÚIX_TEST_TNAMEË÷Òý
DROP INDEX
TEST.IX_TEST_TNAME--Èç¹û´æÔÚÔòɾ³ý
--´´½¨Ë÷Òý
CREATE NONCLUSTER ......