Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

SQL Server Óû§¶¨ÒåµÄº¯Êý


·¢²¼ÈÕÆÚ : 1/14/2005 | ¸üÐÂÈÕÆÚ : 1/14/2005
John Papa
Óû§¶¨ÒåµÄº¯Êý (UDF) ÊÇ×¼±¸ºÃµÄ´úÂëÆ¬¶Î£¬Ëü¿ÉÒÔ½ÓÊܲÎÊý£¬´¦ÀíÂß¼­£¬È»ºó·µ»ØÄ³Ð©Êý¾Ý¡£¸ù¾Ý SQL Server Books Online£¬SQL Server™ 2000 ÖÐµÄ UDF ¿ÉÒÔ½ÓÊÜ´Ó 0 µ½ 1024 µÄÈÎÒâ¸öÊýµÄ²ÎÊý£¬²»¹ýÎÒ±ØÐë³ÐÈÏ£¬ÎÒ»¹Î´³¢ÊÔ½« 1024 ¸ö²ÎÊý´«µÝµ½ UDF ÖС£UDF µÄÁíÒ»¸ö¹Ø¼üÌØÕ÷ÊÇ·µ»ØÒ»¸öÖµ¡£È¡¾öÓÚ UDF µÄÀàÐÍ£¬µ÷ÓÃÀý³Ì¿ÉÒÔʹÓÃÕâ¸öÖµÀ´¼ÌÐø´¦ÀíËüµÄÊý¾Ý¡£Òò´Ë£¬Èç¹û UDF ·µ»Øµ¥Ò»Öµ£¨±êÁ¿Öµ£©£¬µ÷ÓÃÀý³Ì¾Í¿ÉÒÔÔÚÈκÎÄܹ»Ê¹Óñê×¼±äÁ¿»òÎÄ×ÖÖµµÄµØ·½Ê¹ÓÃÕâ¸öÖµ¡£Èç¹û UDF ·µ»ØÒ»¸öÐм¯£¬Ôòµ÷ÓÃÀý³Ì¿ÉÒÔÑ­»··ÃÎʸÃÐм¯£¬Áª½Óµ½¸ÃÐм¯£¬»ò¼òµ¥µØ´Ó¸ÃÐм¯ÖÐÑ¡ÔñÁС£
ËäÈ»ÏÖÔÚ´ó¶àÊý±à³ÌÓïÑÔÒѾ­ÔÝʱ֧³Öº¯Êý£¬µ«Ö»ÓÐ SQL Server 2000 ÒýÈëÁË UDF¡£´æ´¢¹ý³ÌºÍÊÓͼÔÚ SQL Server ÖпÉÓõÄʱ¼äÔ¶ÔçÓÚ UDF£¬µ«ÕâЩ¶ÔÏóÖеÄÿһ¸öÔÚ SQL Server ¿ª·¢Öж¼ÓÐ×Ô¼ºÊʵ±µÄλÖᣴ洢¹ý³Ì¿ÉÒԺܺõØÓÃÓÚ´¦Àí¸´Ô SQL Âß¼­¡¢±£Ö¤ºÍ¿ØÖƶÔÊý¾ÝµÄ·ÃÎÊ£¬ÒÔ¼°½«Ðм¯·µ»Øµ½µ÷ÓÃÀý³Ì£¬ÎÞÂÛ´ËÀý³ÌÊÇ»ùÓÚ Visual Basic® µÄ³ÌÐò£¬»¹ÊÇÁíÒ»¸ö Transact-SQL (T-SQL) Åú´¦ÀíÎļþ¡£ÓëÊÓͼ²»Í¬£¬´æ´¢¹ý³ÌÊÇÒѱàÒëµÄ£¬ÕâʹµÃËüÃdzÉΪÓÃÀ´±íʾºÍ´¦ÀíÆµ·±ÔËÐÐµÄ SQL Óï¾äµÄÀíÏëºòÑ¡Õß¡£ÊÓͼ¿ÉÒԺܺõØÓÃÓÚ¿ØÖƶÔÊý¾ÝµÄ·ÃÎÊ£¬µ«ËüÃǵĿØÖÆ·½Ê½Óë´æ´¢¹ý³Ì²»Í¬¡£ÊÓͼ½öÏÞÓÚÉú³É¸ÃÊÓͼµÄ»ù´¡ SELECT Óï¾äÖеÄijЩÁкÍÐС£Òò¶øÊÓͼ³£ÓÃÓÚ±íʾ³£ÓÃµÄ SELECT Óï¾ä£¬¸ÃÓï¾ä¿ÉÒÔÁª½Ó¶à¸ö±í¡¢Ê¹Óà WHERE ×Ӿ䣬ÒÔ¼°¹«¿ªÌض¨µÄÁС£ÔÚÁª½Óµ½ÆäËû±íºÍÊÓͼµÄ SQL Óï¾äµÄ from ×Ó¾äÖо­³£»á·¢ÏÖÊÓͼ¡£
ÔÚÆäºËÐIJ¿·Ö£¬UDF ¼ÈÀàËÆÓÚÊÓͼ£¬Ò²ÀàËÆÓÚ´æ´¢¹ý³Ì¡£ÏñÊÓͼһÑù£¬UDF ¿ÉÒÔ·µ»ØÒ»¸öÐм¯£¬¸ÃÐм¯¿ÉÓÃÓÚ JOIN ÖС£Òò´Ë£¬µ± UDF ·µ»ØÒ»¸öÐм¯²¢½ÓÊܲÎÊýʱ£¬ËüÏñÒ»¸öÄú¿ÉÒÔÁª½Óµ½µÄ´æ´¢¹ý³Ì¡¢»òÕßÒ»¸ö²ÎÊý»¯µÄÊÓͼ¡£µ«ÊÇ£¬ÕýÈçÎÒ½«ÑÝʾµÄ£¬UDF ¿ÉÒÔ×öµ½ÕâÒ»µã£¬ÉõÖÁ¸ü¶à¡£
ÓÐÁ½ÖÖÖ÷ÒªµÄ UDF ÀàÐÍ£º·µ»Ø±êÁ¿ÖµµÄ UDF ºÍ·µ»Ø±íÖµµÄ UDF¡£ÔÚ±íÖµ UDF ÖУ¬Äú½«ÕÒµ½·µ»ØÄÚÁª±íºÍ¶àÓï¾ä±íµÄ UDF£¨Çë²Î¼ûͼ 1£©¡£ÔÚÒÔϲ¿·ÖÖУ¬ÎÒ½«¶ÔÿÖÖÀàÐͶ¼¼ÓÒÔ¹Ø×¢¡£
±êÁ¿ UDF
·µ»Ø±êÁ¿ÖµµÄ UDF ×îÀàËÆÓÚÐí¶à±à³ÌÓïÑÔËùÒýÓõÄ×÷Ϊº¯ÊýµÄÄÚÈÝ¡£ËüÃÇ·µ»ØÓɱêÁ¿Êý¾ÝÀàÐÍ£¨ÀýÈ磬integer¡¢varchar(n)¡¢char(n)¡¢money¡¢datetime¡¢bit£¬µÈµÈ£©×é³ÉµÄµ¥Ò»Öµ¡£Èç¹ûÓû§¶¨ÒåµÄÊý¾ÝÀàÐÍ (UDDT) »ùÓÚ±êÁ¿Êý¾ÝÀàÐÍ£¬UDF Ò²¿ÉÒÔ·µ»ØÕâЩÊý¾ÝÀàÐÍ¡£Ê¹ÓÃ


Ïà¹ØÎĵµ£º

ʹÓÃSQLServerÄ£°åÀ´Ð´¹æ·¶µÄSQLÓï¾ä

Èç¹ûÄã¾­³£Óöµ½ÏÂÃæµÄÎÊÌ⣬Äã¾ÍÒª¿¼ÂÇʹÓÃSQL ServerµÄÄ£°åÀ´Ð´¹æ·¶µÄSQLÓï¾äÁË£º
SQL³õѧÕß¡£
¾­³£Íü¼Ç³£ÓõÄDML»òÊÇDDL SQL Óï¾ä¡£
ÔÚ¶àÈË¿ª·¢Î¬»¤µÄSQLÖУ¬Ã¿¸öÈ˶¼ÓÐ×Ô¼ºµÄSQLϰ¹ß£¬Ã»ÓÐÒ»Ì×ͳһµÄ¹æ·¶¡£
ÔÚSQL Server Management StudioÖУ¬ÒѾ­¸ø´ó¼ÒÌṩÁ˺ܶೣÓõÄÏÖ³ÉSQL¹æ·¶Ä£°å¡£
SQL Server Management ......

Insert into select SQL¿çÊý¾Ý¿â¸´ÖÆÊý¾Ý


ת×Ô£ºÃ÷Ò¹Ðǿՠ-- Insert select ´øÑ¡Ôñ¸´ÖÆÒ»ÕÅ±íµ½ÁíÒ»Õűí
ʹÓÃSELECT INTO ºÍ INSERT INTO SELECT ±í¸´ÖÆÓï¾äÁË¡£
1.INSERT INTO SELECTÓï¾ä
Óï¾äÐÎʽΪ£ºInsert into Table2(field1,field2,...) select value1,value2,... from Table1 [where column =value]
[]Ϊ¿ÉÑ¡ÄÚÈÝ
ÒªÇóÄ¿±ê±íTable2±ØÐë´æÔÚ£¬ÓÉÓ ......

Sql Serverͬ±íÄڵļ¶ÁªÅÅÐò

Sql Serverͬ±íÄڵļ¶ÁªÅÅÐò£¨¼´Í¬¸¸¼¶±ðµÄ×Ó½Úµã×ÔÐа´1~NÅÅÐò£©,2005°æ±¾ÒѾ­×Ô´øÁËROW_NUMBER() OVER×Ӿ䣬¿ÉÒԺܷ½±ãµØÊµÏÖЧ¹û¡£µ«ÊÇ2000°æ±¾²»Ö§³ÖÕâÖÖ×ö·¨£¬²»¹ýÒ²¿ÉÒÔ²ÉÈ¡ÌØÊâ×ö·¨
--slq2005
select rd.id,r.id ruleId,ROW_NUMBER() OVER(
    PARTITION BY r.id
    ORDER BY ......

aspµ÷ÓÃsql server´æ´¢¹ý³Ì

ASPµ÷Óô洢¹ý³ÌµÄ·½·¨£º    
 
----  ¡¡¡¡µ÷Óô洢¹ý³ÌµÄ·½·¨ÐèҪʹÓÃADOµÄCommand¶ÔÏó¡£Command¶ÔÏóÊǶÔÒ»¸öÊý¾ÝÔ´ÔËÐÐÌØ¶¨ÃüÁîµÄ¶¨Ò壨ÀýÈ磬һ¸öSQL²éѯ»òÒ»¸öSQL´æ´¢¹ý³Ì£©¡£ÏÂÃæÒÔMS  SQL  SERVER6.5Ϊºǫ́Êý¾Ý¿â£¬½éÉÜASPµ÷Óô洢¹ý³ÌµÄ·½·¨¡£    
 
----  ¡ ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ