图解C#创建SqlServer MD5 加密函数
创建步骤如下:
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.执行刚创建的函数: