SQL Server CLRÈ«¹¦ÂÔÖ®ËÄ
CLR¿ÉÒÔʵÏÖDMLºÍDDLÁ½ÖÖ´¥·¢ÐÎʽ£¬µ«ÊDZ¾ÈËÒ»°ã²»½¨ÒéʹÓÃCLRµÄ´¥·¢Æ÷£¬Ö÷ÒªÊÇ¿¼Âǵ½Ð§ÂÊÎÊÌâ¡£±ÈÈçÎÒÃÇʹÓÃtriggerÀ´ÊµÏÖ·¢mailµÈ²Ù×÷ʱ£¬¾ÍÒª¿¼ÂÇpop3»òÊÇsmtpµÈ´ýʱ¼ä£¬ÒòΪtrigger±¾Ê¾ÍÊǸöÊÂÎñ£¬Ò²¾ÍÊÇ˵£¬ÔÚsmtpµÈ´ýʱ¼äÒ²ËãÔÚÁËÕû¸öÊÂÎñÖУ¬ÕâÑù¾Í»á´ó´óÓ°ÏìЧÂÊ¡£
1.CLR DML´¥·¢Æ÷
DMLÖ¸µÄÊÇÊý¾Ý²Ù×÷ÓïÑÔ£¬Ò²¾ÍÊÇͨ³£µÄinsert,updateºÍdelete²Ù×÷¡£Õâ¸ö´¥·¢Æ÷Ö÷ҪʵÏÖÔÚ¶ÔpubsÊý¾Ý¿âÖеÄauthor±í½øÐÐinsert,update,deleteʱ£¬»áÏÔʾÏàÓ¦µÄ²Ù×÷Ãû³Æ¡£
///
/// °Ñinsert,update,delete²Ù×÷¶¼ÏÔʾ³öÀ´
///
[Microsoft.SqlServer.Server.SqlTrigger(
Name = "UF_DML_Trigger",
Target = "dbo.authors",
Event = "FOR INSERT, UPDATE, DELETE")]
public static void UF_DML_Trigger()
{
switch (SqlContext.TriggerContext.TriggerAction)
{
case TriggerAction.Insert:
SqlContext.Pipe.Send("Trigger Insert");
break;
case TriggerAction.Update:
SqlContext.Pipe.Send("Trigger Update");
break;
case TriggerAction.Delete:
SqlContext.Pipe.Send("Trigger Delete");
Ïà¹ØÎĵµ£º
from:csdn
ÄÜ·ñÀûÓô¥·¢Æ÷²Ù×÷Ô¶³ÌÊý¾Ý¿â?
------------------------------------------------------------
-----01
------------------------------------------------------------
ÄÜ/********************Á´½ÓÊý¾Ý¿â *******************************/
exec OPENDA ......
LIKEºÍͨÅä·û
©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥©¥
È·¶¨¸ø¶¨µÄ×Ö·û´®ÊÇ·ñÓëÖ¸¶¨µÄģʽƥÅ䡣ģʽ¿ÉÒÔ°üº¬³£¹æ×Ö·ûºÍͨÅä·û×Ö·û¡£Ä£Ê½Æ¥Åä¹ý³ÌÖУ¬³£¹æ×Ö·û±ØÐëÓë×Ö·û´®ÖÐÖ¸¶¨µÄ×Ö·ûÍêȫƥÅ䡣Ȼ¶ø£¬¿ÉʹÓÃ×Ö·û´®µÄÈÎÒâÆ¬¶ÎÆ¥ÅäͨÅä·û¡£ÓëʹÓÃ
= ºÍ != ×Ö·û´®±È½ÏÔËËã·ûÏà±È£¬Ê¹ÓÃͨÅä·û¿Éʹ LIKE ÔËË ......
ÏÂÔØµØÖ·£º http://download.csdn.net/source/1805903
private string ReArrange(string str)
{
string[] keywords = new string[] {"select","from","where","and","order\\s+by","or","into",
"update","set","delete","haveing" ......
ÒòÏÖÔڵŤ×÷ÐèÒª£¬
ÎҵôÓWinFormµÄƽ̨£¬
תÐ͵½WebFormµÄÒ³Ãæ¡£
ÓÐÒ»Äê¶àûÓнӴ¥SQL ServerÁË£¬
ËäÈ»´óѧʱÓеã»ù´¡£¬
µ«Ò²Íü¼ÇµÃ²î²»¶àÁË¡£
ÒòΪAsp.netÐ͵ÄB/SÍøÕ¾ºÍWinFormµÄ»¹ÊÇÓе㲻ͬ£¬
ÏÖÔÚ¹¤×÷ÆðÀ´²»ÊÇÄÇôµÃÐÄÓ¦ÊÖ¡£
ιʶøÖªÐ£¬
¾Í°ÑÒÔǰʵϰʱ×öµÄµÄÍøÕ¾Ô´´úÂëÄóöÀ´¿´¿´¡£
ÒòΪҪÓõ½SQL 2005S ......