sql2005 clr例子

using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlTypes;
using System.Text.RegularExpressions;
using Microsoft.SqlServer.Server;
using System.Net;
using System.IO;
namespace qanholas
{
public class net
{
[SqlFunction(IsDeterministic
= true, DataAccess = DataAccessKind.None)]
public static SqlString ping(string html)
{
return (SqlString)GetWebClient(html);
}


private static string GetWebClient(string url)
{
string strHTML = "";
WebClient myWebClient
= new WebClient();
Stream myStream
= myWebClient.OpenRead(url);
StreamReader sr
= new StreamReader(myStream, System.Text.Encoding.GetEncoding("utf-8"));
strHTML
= sr.ReadToEnd();
myStream.Close();
return strHTML;
}



}


}
 
--创建程序集 
USE qanholas; 
CREATE ASSEMBLY qanholas  
FROM 'D:\WindowsApplication\qanholas\qanholas\bin\Debug\qanholas.dll' 
 
 
--创建函数 
CREATE FUNCTION dbo.gethtml 

    @html AS NVARCHAR(20

RETURNS NVARCHAR(MAX
AS 
    EXTERNAL NAME qanholas.[qanholas.net].[ping]; 
GO 
 
 
--无限制访问 
USE [qanholas] 
GO 
 
ALTER ASSEMBLY [qanholas] 
WITH PERMISSION_SET = UNSAFE 
 
GO 
 
 
 
SELECT dbo.gethtml('http:\\www.baidu.com')  
posted @ 2011-07-04 10:41  qanholas  阅读(287)  评论(0编辑  收藏  举报