LINQ to SQL¸üÐÂÊý¾Ý¿â²Ù×÷
ʹÓÃLINQ to SQL½¨Ä£NorthwindÊý¾Ý¿â
ÔÚÕâ֮ǰһÆðѧ¹ýLINQ to SQLÉè¼ÆÆ÷µÄʹÓã¬ÏÂÃæ¾ÍʹÓÃÈçϵÄÊý¾ÝÄ£ÐÍ£º
µ±Ê¹ÓÃLINQ to
SQLÉè¼ÆÆ÷Éè¼ÆÒÔÉ϶¨ÒåµÄÎå¸öÀࣨProduct£¬Category£¬Customer£¬OrderºÍOrderDetail£©µÄʱºò£¬Ã¿¸öÀàÖеÄÊôÐÔ
¶¼Ó³ÉäÁËÏàÓ¦Êý¾Ý¿âÖбíµÄÁУ¬Ã¿¸öÀàµÄʵÀýÔò´ú±íÁËÊý¾Ý¿â±íÖеÄÒ»Ìõ¼Ç¼¡£ÁíÍ⣬µ±¶¨ÒåÊý¾ÝÄ£ÐÍʱ£¬LINQ to
SQLÉè¼ÆÆ÷ͬÑù»á´´½¨Ò»¸ö×Ô¶¨ÒåDataContextÀ࣬À´×÷ΪÊý¾Ý¿â²éѯºÍÓ¦ÓøüÐÂ/±ä»¯µÄÖ÷ÒªÇþµÀ¡£ÒÔÉÏÊý¾ÝÄ£ÐÍÖж¨ÒåµÄDataContext
ÀàÃüÃûΪ“NorthwindDataContext”¡£¸ÃÀàÖаüº¬ÁË´ú±íÿ¸ö½¨Ä£Êý¾Ý¿â±íµÄÊôÐÔ¡£
ʹÓÃLINQÓï·¨±í´ïʽ¿ÉÒÔÊ®·Ö¼òµ¥µÄʹÓÃNorthwindDataContextÀàÀ´²éѯºÍ¼ìË÷Êý¾Ý¿âÖеÄÊý¾Ý¡£LINQ to
SQL»áÔÚÔËÐÐʱ×Ô¶¯µÄת»»LINQ±í´ïʽµ½Êʵ±µÄSQL´úÂëÀ´Ö´ÐС£ÀýÈ磬±àдÒÔÏÂLINQ±í´ïʽÀ´¸ù¾ÝProduct
Name¼ìË÷µ¥¸öProduct¶ÔÏó£º
»¹¿ÉÒÔʹÓÃLINQ±í´ïʽÀ´¼ìË÷ËùÓв»´æÔÚÓÚOrder DetailsÖеģ¬²¢ÇÒUnitPrice´óÓÚ100µÄËùÒÔProduct£º
±ä»¯¸ú×ÙºÍDataContext.SubmitChanges£¨£©
µ±Ö´ÐвéѯºÍ¼ìË÷ÏñProductʵÀýÕâÑùµÄ¶ÔÏóʱ£¬LINQ to SQL»á×Ô¶¯±£³Ö¶ÔÕâЩ¶ÔÏóÈκα仯»ò¸üеĸú×Ù¡£ÎÒÃÇ¿ÉÒÔ½øÐÐÈÎÒâ´ÎÊýµÄ²éѯ£¬ÒÔ¼°Ê¹ÓÃLINQ to SQLµÄDataContextÀà×÷³ö¸üУ¬¶øÕâЩ±ä»¯¶¼»á±»È«²¿¸ú×Ù¡£
×¢Ò⣺LINQ to SQLµÄ±ä»¯¸ú×Ù·¢ÉúÓÚµ÷ÓÃÕ߶˗—¶ø²»ÊÇÔÚÊý¾Ý¿âÖС£Õâ¾ÍÒâζ×ÅʹÓøú×Ù²»»áÏúºÄÈκÎÊý¾Ý¿â×ÊÔ´£¬Ò²²»ÐèÒªÔÚÊý¾Ý¿âÖиıä/°²×°ÈκÎ×é¼þÄ£¿é¡£
µ±¶Ô´ÓLINQ to
SQLÖмìË÷µÄ¶ÔÏó×÷³ö¸ü¸ÄÖ®ºó£¬ÎÒÃÇ¿ÉÒÔÑ¡Ôñµ÷ÓÃDataContextÉϵÄSubmitChange£¨£©·½·¨À´Ó¦Óñ仯·µ»Øµ½Êý¾Ý¿â¡£Õ⽫»áµ¼ÖÂ
LINQ to SQL¶¯Ì¬¼ÆËã²¢Ö´ÐÐÊʵ±µÄSQL´úÂëÀ´¸üÐÂÊý¾Ý¿â¡£ÀýÈ磬±àдÒÔÏ´úÂë¸üÐÂÊý¾Ý¿âÖÐProduct
NameΪ“Chai”µÄProductÉϵÄUnitPriceºÍUnitsInStock£º
µ±ÔÚÒÔÉÏ´úÂëÖе÷ÓÃnorthwind.SubmitChanges£¨£©·½·¨Ê±£¬LINQ to SQL»á¶¯Ì¬¹¹½¨²¢Ö´ÐÐÒ»¸ö¸üÐÂÕâÁ½¸öProductÊôÐÔÖµµÄSQL“UPDATE”´úÂëÄ£¿é¡£
ÔÚÏÂÃæ´úÂëÖÐÎÒÃÇÀ´±éÀú²»Á÷Ðеģ¬°º¹óµÄProduct£¬²¢°ÑËüÃǵÄReorderLevelÊôÐÔÉèΪ0£º
µ±ÔÚÒÔÉÏ´úÂëÖе÷ÓÃnorthwind.SubmitChanges£¨£©·½·¨Ê±£¬LINQ to SQL»á¼ÆËã²¢Ö´ÐÐÒ»×éÊʵ±µÄUPDATE´úÂëÄ£¿éÀ´ÐÞ¸ÄRecorderLevelÊôÐÔÒѱ仯µÄProduct¡£
×¢Ò⣬Èç¹ûÒ»¸öProductµÄÊôÐÔûÓÐͨ¹ýÊôÐÔÖ¸¶¨¶ø·¢Éú±ä»¯£¬Ôò¸Ã¶ÔÏ󲻻ᱻÈÏΪÊÇ·¢Éú±ä»¯µÄ£¬²¢ÇÒLINQ to
SQLÒ²²»
Ïà¹ØÎĵµ£º
ÎÒÃÇÒª×öµ½²»µ«»áдSQL,»¹Òª×öµ½Ð´³öÐÔÄÜÓÅÁ¼µÄSQL,ÒÔÏÂΪ±ÊÕßѧϰ¡¢ÕªÂ¼¡¢²¢»ã×ܲ¿·Ö×ÊÁÏÓë´ó¼Ò·ÖÏí£¡
£¨1£© Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)£º
ORACLE µÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬from×Ó¾äÖÐдÔÚ×îºóµÄ±í(»ù´¡±í driving table)½«±»×îÏÈ´¦À ......
È磺SET @sql=N'SELECT * from stu'
ÆäÖГN”µÄ×÷ÓÃÊDZíʾºóÃæµÄ±àÂë¸ñʽΪunicode±àÂë
DECLARE @rst INT,@sql NVARCHAR(4000)
SET @sql=N'SELECT * from tb '
EXEC sp_executesql @sql,N'@rst INT OUTPUT',@rst OUTPUT
SELECT @rst
......
--SQL Server£º
Select TOP N * from TABLE Order By NewID()
--Access£º
Select TOP N * from TABLE Order By Rnd(ID)
Rnd(ID) ÆäÖеÄIDÊÇ×Ô¶¯±àºÅ×ֶΣ¬¿ÉÒÔÀûÓÃÆäËûÈκÎÊýÖµÀ´Íê³É£¬±ÈÈçÓÃÐÕÃû×Ö¶Î(U ......
½ñÌìÔڵǼsql2005µÄʱºò£¬ÏëÓÃsaµÄÑéÖ¤·½Ê½µÇ¼£¬·¢ÏֵǼ²»ÁË£¬ÔÚÍøÉϲéÁËÏ£¬°´ÕÕÏÂÃæµÄ¾Í¿ÉÒÔ½â¾ö¡£Ö®Ç°ÔÚ×°sql2005µÄʱºò£¬ÊÇÉèÖóÉwindowsÑéÖ¤·½Ê½µÇ¼µÄ¡£
¾ßÌå½â¾ö·½°¸ÈçÏ£º
1. ¿ªÆôsql2005Ô¶³ÌÁ¬½Ó¹¦ÄÜ,¿ªÆô°ì·¨ÈçÏÂ,
ÅäÖù¤¾ß->sql serverÍâΧӦÓÃÅäÖÃÆ÷->·þÎñºÍÁ¬½ÓµÄ ......