SQLServer ×î³£ÓõÄË÷Òý×Ö¶Î(ͨÓÃË÷Òý×Ö¶Î)
Ò»¡¢SQLServer ͨÓÃË÷Òý×Ö¶Î
1¡¢Primary Key's Ö÷¼ü
2¡¢Foreign Key's Íâ¼ü
3¡¢Ö§³ÖSELECT¡¢INSERT¡¢UPDATEºÍDELETEÃüÁîµÄ×Ö¶Î :
(1)¡¢INNER JOIN
(£²)¡¢RIGHT | LEFT OUTER JOIN
(£³)¡¢WHERE
(£´)¡¢ORDER BY
(£µ)¡¢GROUP BY
(£¶)¡¢HAVING
¶þ¡¢´´½¨Ë÷ÒýµÄÆäËûÒòËØ(Ö÷ÒªÒòËØ¶¼ÒòΪË÷ÒýÊÇÊý¾Ý±íÍⲿ¶ÀÁ¢µÄ×éÖ¯,µ±±íÖеÄÊý¾Ý·¢Éú±ä»¯Ê±,Ë÷ÒýÒ²ÐèҪͬ²½Î¬»¤,Õ⽫ӰÏìÊý¾Ý±íµÄ¸üвÙ×÷µÄЧÂÊ):
1¡¢Êý¾ÝÁ¿——Èç¹û¼Ç¼ÐÐÊýºÜÉÙ,²»±Ø½¨Á¢Ë÷Òý¾ÍÄÜ¿ìËÙ·ÃÎÊ
2¡¢Êý¾Ý±ä¶¯ÆµÂÊ——Èç¹û±íÖеÄÊý¾Ý±ä¶¯Æµ·±(INSERT¡¢UPDATEºÍDELETE²Ù×÷)ÿ´Î±ä¶¯,Ë÷Òý¶¼ÒªÔö¼Óά»¤µÄ¿ªÏú,ÎÒÃǽ¨Á¢Ë÷ÒýÓ¦¸Ã¿¼Âǵ½Êý¾Ý±ä¶¯µÄÇ÷ÊÆ,ÀýÈç:bbsÖеķ¢Ìû,ÕâÕűíµÄÐÂÊý¾ÝÊǰ´ÕÕ´´½¨Ê±¼äÅÅÁеÄ,ËùÒÔ°´ÕÕ´´½¨Ê±¼ä½¨Á¢µÄË÷Òý,ÔÚÌí¼ÓÐÂÊý¾Ýʱ,ά»¤Ë÷ÒýµÄ¿ªÏúÊÇ×îµÍµÄ
3¡¢¾¡Á¿´´½¨ÊÝË÷Òý——Èç¹ûÄã²»ÄÜÈ·¶¨Ë÷ÒýÊýÁ¿,ÄÇô¾Íÿ¸öË÷ÒýÓÃÒ»¸ö×ֶξͺÃÁË,³ý·ÇƵ·±µÄ¶Ôijһ×é×ֶνøÐвéѯ,·ñÔòûÓбØÒª½¨Á¢ÅÖË÷Òý
Ïà¹ØÎĵµ£º
Declare @Id int
Declare @Name varchar(20)
Declare Cur Cursor For Select Id,Name from T_User
Open Cur
Fetch next from Cur Into @Id,@Name
While @@fetch_status=0
Begin
Update T_User Set [Name]=@Name,Id=@Id
......
HOLDLOCK ½«¹²ÏíËø±£Áôµ½ÊÂÎñÍê³É£¬¶ø²»ÊÇÔÚÏàÓ¦µÄ±í¡¢ÐлòÊý¾ÝÒ³²»ÔÙÐèҪʱ¾ÍÁ¢¼´ÊÍ·ÅËø¡£HOLDLOCK µÈͬÓÚ SERIALIZABLE¡£
NOLOCK ²»Òª·¢³ö¹²ÏíËø£¬²¢ÇÒ²»ÒªÌṩÅÅËüËø¡£µ±´ËÑ¡ÏîÉúЧʱ£¬¿ÉÄÜ»á¶ÁȡδÌá½»µÄÊÂÎñ»òÒ»×éÔÚ¶ÁÈ¡ÖÐ¼ä»Ø¹öµÄÒ³Ãæ¡£ÓпÉÄÜ·¢ÉúÔà¶Á¡£½öÓ¦ÓÃÓÚ SELECT Óï¾ä¡£
PAGLOCK ÔÚͨ³£Ê¹Óõ¥¸ö±íËøµ ......
ÔÚsqlserver(Ó¦¸Ã˵ÔÚĿǰËùÓÐÊý¾Ý¿â²úÆ·)Öд´½¨Ò»¸ö×ÊÔ´Èç±í£¬ÊÓͼ£¬´æ´¢¹ý³ÌÖж¼ÒªÅжÏÓë´´½¨µÄ×ÊÔ´ÊÇ·ñÒѾ´æÔÚ
ÔÚsqlserverÖÐÒ»°ã¿Éͨ¹ý²éѯsys.objectsϵͳ±íÀ´µÃÖª½á¹û£¬²»¹ý¿ÉÒÔÓиü·½±ãµÄ·½·¨
ÈçÏ£º
if object_id('tb_table') is not null
......
<%
Dim Conn, Connstr
Dim strServer, strUid, strPwd, strDB
strServer = "HUA-5780C2D1CCF" 'SQLÊý¾Ý¿â·þÎñÆ÷µØÖ·
strUid = "sa" 'Êý¾Ý¿âÓû§Ãû
strPwd = "123456" ......
--ÿ¸öÔµĵÚÒ»Ìì
select dateadd(dd,-datepart(dd,getdate())+1,getdate())
--µÚ¸öÔµÄ×îºóÒ»Ìì
select dateadd(dd,-datepart(dd,getdate()),dateadd(mm,1,getdate()))
--±¾ÔµÄÌìÊý
select datediff(dd,getdate(),dateadd(mm,1,getdate()))
......