创建步骤如下:
1.新建项目:
2.出现如下提示:点击确定
3.出现要部署的数据库
4.选择 是
5.下面编写代码:
public partial class UserDefinedFunctions
{
[Microsoft.SqlServer.Server.SqlFunction]
public static SqlString MD5Function(string Source)
{
// 在此处放置代码
return MD5String(Source);
}
/// <summary>
/// 用MD5加密
/// </summary>
/// <param name="Source">要加密的字符串</param>
/// <returns>返回加密后的密文</returns>
public static string MD5String(string Source)
{
try
{
byte[] data = System.Text.Encoding.GetEncoding(1252).GetBytes(Source);
data = new MD5CryptoServiceProvider().ComputeHash(data);
string returnValue = "";
for (int i = 0; i < data.Length; i++)
/*ToString("X2") 为C#中的字符串格式控制符
X为 十六进制
2为 每次都是两位数
比如 0x0A ,若没有2,就只会输出0xA
假设有两个数10和26,正常情况十六进制显示0xA、0x1A,这样看起来不整齐,为了好看,可以指定"X2",这样显示出来就是:0x0A、0x1A*/
returnValue += data[i].ToString("x2");
return returnValue;
}
catch (SystemException ex)
{
throw ex;
}
}
};
6.编译部署(注:需要将framework降到3.5,才能部署成功)
7.数据库执行 如下语句:
exec sp_configure 'show advanced options', '1'; go RECONFIGURE; go exec sp_configure 'clr enabled', '1' go RECONFIGURE; exec sp_configure 'show advanced options', '1'; go RECONFIGURE;
8.执行刚创建的函数: