SQL ServerÖÐʹÓÃCLRµ÷ÓÃ.NET·½·¨
½éÉÜ
ÎÒÃÇÒ»ÆðÀ´×ö¸öʾÀý£¬ÔÚ.NETÖÐн¨Ò»¸öÀ࣬²¢ÔÚÕâ¸öÀàÀïн¨Ò»¸ö·½·¨£¬È»ºóÔÚSQL ServerÖе÷ÓÃÕâ¸ö·½·¨¡£°´ÕÕ΢ÈíËùÊö£¬Í¨¹ýËÞÖ÷ Microsoft .NET Framework 2.0 ¹«¹²ÓïÑÔÔËÐпâ (CLR)£¬SQL Server 2005ÏÔÖøµØÔöÇ¿ÁËÊý¾Ý¿â±à³ÌÄ£ÐÍ¡£ ÕâʹµÃ¿ª·¢ÈËÔ±¿ÉÒÔÓÃÈκÎCLRÓïÑÔ£¨ÈçC#¡¢VB.NET»òC++µÈ£©À´Ð´´æ´¢¹ý³Ì¡¢´¥·¢Æ÷ºÍÓû§×Ô¶¨Ò庯Êý¡£
ÎÒÃÇÈçºÎʵÏÖÕâЩ¹¦ÄÜÄØ£¿
ΪÁËʹÓÃCLR£¬ÎÒÃÇÐèÒª×öÈçϼ¸²½£º
1¡¢ÔÚ.NETÖÐн¨Ò»¸öÀ࣬²¢ÔÚÕâ¸öÀàÀïн¨Ò»¸öpublic·½·¨¡£
2¡¢±àÒëÕâ¸öÀàΪһ¸öDLL¡£
3¡¢ÔÚSQL ServerÖÐ×¢²áÕâ¸öDLL¡£
4¡¢Ð½¨Ò»¸öSQL Serverº¯ÊýÀ´·ÃÎÊÖ¸¶¨µÄ.NET·½·¨¡£
½ÓÏÂÀ´£¬ÎÒÃÇÒ»ÆðÀ´Íê³ÉÒ»¸öʾÀý
Ê×ÏÈ£¬ÔÚVisual StudioÖÐн¨Ò»¸öÃûΪ“SQLServerCLRTest”µÄÀà¿âÏîÄ¿¡£ È»ºó£¬Ð½¨Ò»¸öÃûΪ“CLRFunctions”µÄÀ࣬²¢ÔÚÆäÄÚÌí¼ÓÒ»¸öÃûΪ“HelloWold”µÄ·½·¨£¬´úÂëÈçÏ£º
public class CLRFunctions
{
public static string HelloWorld(string Name)
{
return ("Hello " + Name);
}
}
ÕâÊÇÒ»¸ö·Ç³£¼òµ¥µÄ·½·¨£¨ÎªÁËÈÃSQL Server¿ÉÒÔµ÷ÓÃËü£¬Ëü±ØÐëÒªÊÇpublicºÍstaticµÄ£©£¬Õâ¸ö·½·¨ÓÐÒ»¸östringÀàÐ͵IJÎÊý£¬·µ»ØÐÅϢΪ“Hello”¼ÓÉÏÄã´«ÈëµÄ²ÎÊý¡£
ÏÖÔÚ£¬ÎÒÃÇÐèÒª±àÒëÕâ¸öÏîĿΪһ¸öDLL£¬²¢ÔÚSQL ServerÖÐ×¢²áËü¡£ ÕâÒ²ÊDZȽϼòµ¥µÄ£¬ÔÚVSÖÐÓÒ¼üµ¥»÷ÏîÄ¿£¬Ñ¡Ôñ“Éú³É”ºó³ÌÐò¾Í»áÉú³ÉÒ»¸öDLL¡£ Èç¹ûÄãµÄÏîÄ¿Êǵ÷ÊÔģʽµÄ»°£¬ÄÇô¾Í¿ÉÒÔÔÚÈçÏÂËùʾÄÇÑùµÄ·¾¶ÀïÕÒµ½±àÒëºÃµÄDLL¡£
C:\Documents and Settings\mark.smith\My Documents\Visual Studio 2005\Projects\SQLServerCLRTest\SQLServerCLRTest\bin\Debug\SQLServerCLRTest.dll
ÕÒµ½Õâ¸öDLLºó£¬ÎÒÃǾͿÉÒÔ°ÑËü¿½±´µ½ÎÒÃǵÄSQL Server»úÆ÷ÉÏÁË£¬Èç¹ûÊÇÏàͬ»úÆ÷µÄ»°ÎÒÃÇÖ»Òª¼ÇסÕâ¸ö·¾¶¼´¿É¡£
ÆôÓÃCLR¹¦ÄÜ
ĬÈÏÇé¿öÏ£¬SQL ServerÖеÄCLRÊǹرյģ¬ËùÒÔÎÒÃÇÐèÒªÖ´ÐÐÈçÏÂÃüÁî´ò¿ªCLR£º
exec sp_configure 'clr enabled',1
reconfigure
go
×¢²áDLL
ΪÁ˵÷ÓÃÎÒÃÇдµÄÄǸö·½·¨£¬ÐèÒªÔÚSQL ServerÖÐ×¢²áÎÒÃǸոձàÒëºÃµÄÄǸöDLL¡£ ÎÒÃÇ¿ÉÒÔÔÚÊý¾Ý¿âÖÐʹÓÃÈçÏÂÃüÁîÀ´×¢²áDLL£¨Â·¾¶ÎªÄãµÄDLLÎļþµÄ·¾¶£©
CREATE ASSEMBLY asmHelloWorld from 'C:\SQLServerCLRTest.dll'
ÔÚSQL ServerÖе÷ÓÃÎÒÃǵÄ.NET·½·¨
ΪÁ˵÷ÓÃ.NET·½·¨£¬ÎÒÃÇ¿ÉÒÔдһ¸öSQL Server×Ô¶¨Ò庯Êý£¬²¢ÔÚÆäÄÚʹÓÃ&ld
Ïà¹ØÎĵµ£º
±£»¤SQL ServerÊý¾Ý¿âµÄÊ®´ó¾øÕÐ
http://blog.csdn.net/cncco/archive/2007/09/15/1785880.aspx
1. °²×°×îеķþÎñ°ü
ΪÁËÌá¸ß·þÎñÆ÷°²È«ÐÔ£¬×îÓÐЧµÄÒ»¸ö·½·¨¾ÍÊÇÉý¼¶µ½SQL Server 2000 Service Pack 3a (SP3a)¡£ÁíÍ⣬Äú»¹Ó¦¸Ã°²×°ËùÓÐÒÑ·¢²¼µÄ°²È«¸üС£
2. ʹÓÃMicrosoft»ùÏß°²È«ÐÔ·ÖÎöÆ÷£¨MBSA£©À´ÆÀ¹À·þÎñÆ÷µÄ°² ......
½â¾öSQL Injection©¶´µÄÒ»¸öº¯Êý
http://blog.csdn.net/cncco/archive/2006/04/07/654254.aspx
º¯Êý
<%
Function CheckInput(str,strType)
'º¯Êý¹¦ÄÜ£º¹ýÂË×Ö·û²ÎÊýÖеĵ¥ÒýºÅ£¬¶ÔÓÚÊý×Ö²ÎÊý½øÐÐÅжϣ¬Èç¹û²»ÊÇÊýÖµÀàÐÍ£¬Ôò¸³Öµ0
'²ÎÊýÒâÒ壺 str ......
±íjh03ÓÐÏÂÁÐÊý¾Ý£º
name¡¡score
aa¡¡¡¡99
bb¡¡¡¡56
cc¡¡¡¡56
dd¡¡¡¡77
ee¡¡¡¡78
ff¡¡¡¡76
gg¡¡¡¡78
ff¡¡¡¡50
1. Ãû´ÎÉú³É·½Ê½1,ScoreÖظ´Ê±ºÏ²¢Ãû´Î
SELECT *¡¡,¡¡Place=(SELECT COUNT(DISTINCT Score) from jh03 WHERE Score >= a.Score)
from jh03 a
ORDER BY Place
½á¹û
Name Score Pla ......
½ñÌìÐÞ¸ÄÁËÊý¾Ý¿â£¬ÓÚÊǽøÐÐÖØз¢²¼ºÍ¶©ÔÄ£¬Í»È»³öÏÖÁËÒÔÏÂÒì³£
½ø³ÌδÄÜ´óÈÝÁ¿¸´ÖƵ½±í"XS_DDML"ÖÐ
´íÎóÏêϸÐÅÏ¢£º
ÔÚ BCP Êý¾ÝÎļþÖÐÓöµ½µÄÒâÍâµÄ EOF
(Ô´: ODBC SQL Server Driver (ODBC); ´íÎó´úÂë: S1000)
ÓÚÊDzé°ïÖú£¬²éGoogle,ºÇºÇ£¬Google»¹ÕæÊǸöºÃµØ·½£¬ÕÒµ½ÁËÒÔÏÂSQL£¬¾Ý˵¿ÉÒÔ½â¾ö¸ÃÎÊÌâ
sp_configure&n ......
-sqlÊÂÎñ´¦Àí
----------------------Àí------------ÂÛ-----------------------
1.ʲôÊÇÊÂÎñ£ºÊÂÎñÊÇÒ»¸ö²»¿É·Ö¸îµÄ¹¤×÷Âß¼µ¥Ôª£¬ÔÚÊý¾Ý¿âϵͳÉÏÖ´Ðв¢·¢²Ù×÷ʱÊÂÎñÊÇ×öΪ×îСµÄ¿ØÖƵ¥ÔªÀ´Ê¹Óõġ£Ëû°üº¬µÄËùÓÐÊý¾Ý¿â²Ù×÷ÃüÁî×÷Ϊһ¸öÕûÌåÒ»ÆðÏòϵÌá½»»ò³·Ïû£¬ÕâÒ»×éÊý¾Ý¿â²Ù×÷ÃüÁîҪô¶¼Ö´ÐУ¬ÒªÃ´¶¼²»Ö´ÐС£
2.ÊÂÎ ......