SQL clr - MS-SQL Server / ·Ç¼¼Êõ°æ
ÏëÓÃSQL CLR×öÈçϵĴ洢¹ý³Ì,µ«ÊÇ·¢ÏÖ±¨´í:
{ÓÉÓÚ´úÂëÒѾ¹ýÓÅ»¯»òÕß±¾»ú¿ò¼ÜλÓÚµ÷ÓöÑÕ»Ö®ÉÏ£¬ÎÞ·¨¼ÆËã±í´ïʽµÄÖµ¡£}
¶øÇÒÈç¹ûÊý¾Ý´Ócase 1ͨ¹ýʱ¾ÍÊÇÕýÈ·µÄ,´Ócase 2ͨ¹ýʱ´íÎó
²¢ÇÒÔÚcase 2ÖеÄmyCommand.CommandTextºóÈç¹ûÊǸöselectÓï¾ä¾ÍÊÇÕýÈ·µÄ,µ«ÊÇÔËÐд洢¹ý³Ì¾Íͨ²»¹ý,¶øÇÒµ¥¶À²âÊÔ´æ´¢¹ý³ÌÊÇÕýÈ·µÄ,ºÃÏñÎÊÌâÊdzöÔÚrecordµÄ·¢ËÍÉÏ,Çó½Ì!
[SqlProcedure]
public static void procClr(SqlXml sx)
{
XPathDocument doc = new XPathDocument(sx.CreateReader());
XPathNavigator nav = doc.CreateNavigator();
XPathNodeIterator i = nav.Select(@"/NewDataSet/StandardDT");
SqlDataRecord record =new SqlDataRecord(new SqlMetaData("i_num", SqlDbType.Int));
SqlPipe sp = SqlContext.Pipe;
sp.SendResultsStart(record);
while (i.MoveNext())
{
//----½âÎöXMLÊý¾Ý----
int inum=Convert.ToInt32(i.Current.Evaluate("string(i_num[1]/text())"));
//-----´¦ÀíÊý¾Ý------
int flag=Function(inum);//×Ô¶¨Ò庯Êý,ÎÞÎó
switch(flag)
{
case 1:
{
record.SetValues(1);
break;
}
case 2:
{
using (SqlConnection myConnection = new S
Ïà¹ØÎÊ´ð£º
ÎÒÓжà¸ö±íA B C ½á¹¹ÊÇÒ»ÑùµÄ£¬¶¼ÓÐ2¸ö×Ö¶ÎnameºÍcontent,ÎÒÒªËÑË÷ËùÒÔ±íËùÓÐ×Ö¶ÎÖаüº¬¡°Öйú¡±µÄÄÚÈÝ Õâ¸öSQLÓï¾äÔõôд
ÈçºÎ½«¶à¸ö±íµÄ²éѯ½á¹ûÁ¬³ÉÒ»¸ö±í Õâ¸öSQLÓï¾äÔõôд ±íµÄ½á¹¹ÊÇÒ»ÑùµÄ
ÀýÈç£ ......
--drop table #T1
--drop table #T2
create Table #T1(ID int,
QueryID nvarchar(20),
ResultID1 nvarchar(20),
ResultID2 nvarchar(20))
create Table #T2(SortNo int,
QueryID nvarchar(20),
ResultID1 nv ......
CREATE PROCEDURE [selectvipcompany]
@username varchar(50),
@companyname varchar(50),
@endtime varchar(1)
AS
declare @sql varchar(1000)
set @sql='' ......
Êý¾Ý¿âÒªÔõôѧ²Å²»»áÏԵóéÏó°¡£¿
Õâ¾ÍÒª¿´ÄãÊʺÏʲô·½·¨ÁË£¬Õâ¾ßÌå²»ºÃ˵µÄ.....
ÔõôÁË£¬ÄѵÀ´ó¼Ò¶¼²»»á£¬»¹ÊÇÕæµÄÌ«³éÏó´ó¼Ò²»ÖªµÀÔõô˵°¡
½áºÏÄã²Ù×÷Êý¾Ý¿âµÄÌå»áºÍÀí½â£¬Ó¦¸ÃЧ¹û»á¸üºÃ¡£·ñÔò£¬Ò ......
ÏÖÔÚÓÐÁ½ÕÅ±í£ºÎÄÕÂÖ÷±íA(articleId,articleTitle)£¬ÎÄÕÂÆÀÂÛ±íB(commentId,articleId,commentTitle)
ÏÖÔÚÎÒÏëʵÏÖÕâÑùµÄ¹¦ÄÜ£ºÁгöÎÄÕÂÁÐ±í£¬ÆäÖÐÿƪÎÄÕ±êÌâÏÂÃæÁгö´ËÎÄÕµÄǰ2¸öÎÄÕÂÆÀÂÛ£¬ÇëÎÊsqlÓï¾äÔõôд°¡ ......