SQL ServerÊý¾Ý¿âÓÅ»¯
[ÕªÒª] ȱʡÇé¿öϽ¨Á¢µÄË÷ÒýÊÇ·ÇȺ¼¯Ë÷Òý£¬µ«ÓÐʱËü²¢²»ÊÇ×î¼ÑµÄ¡£ÔÚ·ÇȺ¼¯Ë÷ÒýÏ£¬Êý¾ÝÔÚÎïÀíÉÏËæ»ú´æ·ÅÔÚÊý¾ÝÒ³ÉÏ¡£
ÓÅ»¯Êý¾Ý¿âµÄ×¢ÒâÊÂÏ
¡¡¡¡1¡¢¹Ø¼ü×ֶν¨Á¢Ë÷Òý¡£
¡¡¡¡2¡¢Ê¹Óô洢¹ý³Ì£¬ËüʹSQL±äµÃ¸ü¼ÓÁé»îºÍ¸ßЧ¡£
¡¡¡¡3¡¢±¸·ÝÊý¾Ý¿âºÍÇå³ýÀ¬»øÊý¾Ý¡£
¡¡¡¡4¡¢SQLÓï¾äÓï·¨µÄÓÅ»¯¡££¨¿ÉÒÔÓÃSybaseµÄSQL Expert£¬¿ÉϧÎÒûÕÒµ½unexpiredµÄÐòÁкţ©
¡¡¡¡5¡¢ÇåÀíɾ³ýÈÕÖ¾¡£
¡¡¡¡SQLÓï¾äÓÅ»¯µÄ»ù±¾ÔÔò£º
¡¡¡¡1¡¢Ê¹ÓÃË÷ÒýÀ´¸ü¿ìµØ±éÀú±í¡£
¡¡¡¡È±Ê¡Çé¿öϽ¨Á¢µÄË÷ÒýÊÇ·ÇȺ¼¯Ë÷Òý£¬µ«ÓÐʱËü²¢²»ÊÇ×î¼ÑµÄ¡£ÔÚ·ÇȺ¼¯Ë÷ÒýÏ£¬Êý¾ÝÔÚÎïÀíÉÏËæ»ú´æ·ÅÔÚÊý¾ÝÒ³ÉÏ¡£ºÏÀíµÄË÷ÒýÉè¼ÆÒª½¨Á¢ÔÚ¶Ô¸÷ÖÖ²éѯµÄ·ÖÎöºÍÔ¤²âÉÏ¡£Ò»°ãÀ´Ëµ£º¢Ù.ÓдóÁ¿Öظ´Öµ¡¢ÇÒ¾³£Óз¶Î§²éѯ£¨between, >,< £¬>=,< =£©ºÍorder by¡¢group by·¢ÉúµÄÁУ¬¿É¿¼Âǽ¨Á¢Èº¼¯Ë÷Òý£»¢Ú.¾³£Í¬Ê±´æÈ¡¶àÁУ¬ÇÒÿÁж¼º¬ÓÐÖØ¸´Öµ¿É¿¼Âǽ¨Á¢×éºÏË÷Òý£»¢Û.×éºÏË÷ÒýÒª¾¡Á¿Ê¹¹Ø¼ü²éѯÐγÉË÷Òý¸²¸Ç£¬Æäǰµ¼ÁÐÒ»¶¨ÊÇʹÓÃ×îÆµ·±µÄÁС£
¡¡¡¡2¡¢IS NULL Óë IS NOT NULL
¡¡¡¡²»ÄÜÓÃnull×÷Ë÷Òý£¬Èκΰüº¬nullÖµµÄÁж¼½«²»»á±»°üº¬ÔÚË÷ÒýÖС£¼´Ê¹Ë÷ÒýÓжàÁÐÕâÑùµÄÇé¿öÏ£¬Ö»ÒªÕâЩÁÐÖÐÓÐÒ»Áк¬ÓÐnull£¬¸ÃÁоͻá´ÓË÷ÒýÖÐÅųý¡£Ò²¾ÍÊÇ˵Èç¹ûijÁдæÔÚ¿ÕÖµ£¬¼´Ê¹¶Ô¸ÃÁн¨Ë÷ÒýÒ²²»»áÌá¸ßÐÔÄÜ¡£ÈκÎÔÚwhere×Ó¾äÖÐʹÓÃis null»òis not nullµÄÓï¾äÓÅ»¯Æ÷ÊDz»ÔÊÐíʹÓÃË÷ÒýµÄ¡£
¡¡¡¡3¡¢INºÍEXISTS
¡¡¡¡EXISTSÒªÔ¶±ÈINµÄЧÂʸߡ£ÀïÃæ¹ØÏµµ½full table scanºÍrange scan¡£¼¸ºõ½«ËùÓеÄIN²Ù×÷·û×Ó²éѯ¸ÄдΪʹÓÃEXISTSµÄ×Ó²éѯ¡£
¡¡¡¡4¡¢ÔÚº£Á¿²éѯʱ¾¡Á¿ÉÙÓøñʽת»»¡£
¡¡¡¡5¡¢µ±ÔÚSQL SERVER 2000ÖУ¬Èç¹û´æ´¢¹ý³ÌÖ»ÓÐÒ»¸ö²ÎÊý£¬²¢ÇÒÊÇOUTPUTÀàÐ͵쬱ØÐëÔÚµ÷ÓÃÕâ¸ö´æ´¢¹ý³ÌµÄʱºò¸øÕâ¸ö²ÎÊýÒ»¸ö³õʼµÄÖµ£¬·ñÔò»á³öÏÖµ÷ÓôíÎó¡£
¡¡¡¡6¡¢ORDER BYºÍGROPU BY
¡¡¡¡Ê¹ÓÃORDER BYºÍGROUP BY¶ÌÓÈκÎÒ»ÖÖË÷Òý¶¼ÓÐÖúÓÚSELECTµÄÐÔÄÜÌá¸ß¡£×¢ÒâÈç¹ûË÷ÒýÁÐÀïÃæÓÐNULLÖµ£¬Optimizer½«ÎÞ·¨ÓÅ»¯¡£
¡¡¡¡7¡¢ÈκζÔÁеIJÙ×÷¶¼½«µ¼Ö±íɨÃ裬Ëü°üÀ¨Êý¾Ý¿âº¯Êý¡¢¼ÆËã±í´ïʽµÈµÈ£¬²éѯʱҪ¾¡¿ÉÄܽ«²Ù×÷ÒÆÖÁµÈºÅÓұߡ£
¡¡¡¡8¡¢IN¡¢OR×Ӿ䳣»áʹÓù¤×÷±í£¬Ê¹Ë÷ÒýʧЧ¡£Èç¹û²»²úÉú´óÁ¿Öظ´Öµ£¬¿ÉÒÔ¿¼ÂǰÑ×Ó¾ä²ð¿ª¡£²ð¿ªµÄ×Ó¾äÖÐÓ¦¸Ã°üº¬Ë÷Òý¡£
¡¡¡¡9¡¢SET SHOWPLAN_ALL ON ²é¿´Ö´Ðз½°¸¡£DBCC¼ì²éÊý¾Ý¿âÊý¾ÝÍêÕûÐÔ¡£DBCC(DataBase Consistency Checker£©ÊÇÒ»×éÓÃÓÚÑéÖ¤SQL ServerÊý¾Ý¿âÍêÕûÐ
Ïà¹ØÎĵµ£º
´´½¨Íâ¼üÔ¼Êø
CREATE TABLE order_sample
(
orderid int PRIMARY KEY,
cust_id int FOREIGN KEY REFERENCES cuts_sample(cust_id) ON DELETE NO CASCADE
)
ON DELETE--ÓÃÓÚ¿ØÖƳ¢ÊÔɾ³ýÍâ¼üÏà¹ØÁªµÄÖ÷±íÖ¸ÏòÐÐʱ²ÉÈ¡µÄ²Ù×÷
-NO ACTION
ɾ³ýÍâ¼üÏà¹ØÁªµÄÖ÷±íÖ¸ÏòÐÐʱ£¬±¨´í
-CASCADE
ɾ³ýÍâ¼üÏà¹ØÁªµÄÖ÷±íÖ¸ÏòÐÐʱ ......
SQL×¢ÈëÊÇĿǰ±È½Ï³£¼ûµÄÕë¶ÔÊý¾Ý¿âµÄÒ»ÖÖ¹¥»÷·½Ê½¡£ÔÚÕâÖÖ¹¥»÷·½Ê½ÖУ¬¹¥»÷Õ߻ὫһЩ¶ñÒâ´úÂë²åÈëµ½×Ö·û´®ÖС£È»ºó»áͨ¹ý¸÷ÖÖÊֶν«¸Ã×Ö·û´®´«µÝµ½SQLServerÊý¾Ý¿âµÄʵÀýÖнøÐзÖÎöºÍÖ´ÐС£Ö»ÒªÕâ¸ö¶ñÒâ´úÂë·ûºÏSQLÓï¾äµÄ¹æÔò£¬ÔòÔÚ´úÂë±àÒëÓëÖ´ÐеÄʱºò£¬¾Í²»»á±»ÏµÍ³Ëù·¢ÏÖ¡£Óɴ˿ɼûSQL×¢Èëʽ¹¥»÷µÄΣº¦ÊǺܴóµÄ£¬ÄÇô ......
ÕâÁ½ÌìÑо¿ÁËSQL SERVERµÄ×Ö¶ÎÐÞ¸Ä.ÓÐһЩÐĵÃ,д³öÀ´ÎªÈÕºó²Î¿¼:
1,ɾ³ý×Ö¶Î: ALTER TABLE [tablename] DROP COLUMN [fieldname]
ɾ³ýµÄʱºò¸Ã×ֶαØÐëûÓб»ÈκÎÍâ¼üÒýÓÃ,ûÓÐÈκÎÔ¼Êø.
2,ɾ³ýÔ¼Êø: ALTER TABLE [tablename] DROP CONSTRAINT constraint_name
ɾ³ýÔ¼ÊøÊÇÔ¼ÊøÃû²»¿É¼Óµ¥ÒýºÅ.
3,Ôö¼ÓĬÈÏÖµÔ¼Êø: ALT ......
Declare @T Table(
CFF_Loanno nvarchar(100),
BANK_Name_2 nvarchar(100),
CFF_code nvarchar(100),
CFF_date datetime,
CFF_amt decimal(18, 6),
......
ÈýÖÖSQL·ÖÒ³·¨
±íÖÐÖ÷¼ü±ØÐëΪ±êʶÁУ¬[ID] int IDENTITY (1,1)
1.·ÖÒ³·½°¸Ò»£º(ÀûÓÃNot InºÍSELECT TOP·ÖÒ³)
Óï¾äÐÎʽ£º
SELECT TOP 10 *
from TestTable
WHERE (ID NOT IN
(SELECT TOP 20 id
  ......