原文:在SQL Server引用dll的流程

在SQL Server中引用dll分为两个步骤

1.创建一个dll文件

2.把dll文件放进SQL Server的程序集中。然后定义一个Function,就可以通过该Function来引用dll中的函数。

创建一个dll文件

  1.点击“文件”->“新建”->“项目”->类库,把命名空间改成StringHelp,添加如下代码

namespace StringHelp              //命名空间
{
public class ClassConvert      //类名
{
   //把输入的字符串中的小写字母变成大写字母
public static string ToUpper(string vInputString)  //函数必须为静态函数,应为静态函数不用实例化类就可以调用
{
return vInputString.ToUpper();  
}
}
}

  2.右击“项目”,点击”生成“或者直接按F6

  3.右击“项目”,点击“在文件资源管理系统中打开文件夹”,点击bin->debug,然后就会看到一个StringHelp.dll文件。

在SQL中引用dll文件

  1.引入dll文件

使用SQL语句 create assembly TestDll from 'C:\Users\聪\Documents\Visual Studio 2012\Projects\StringHelp\StringHelp\obj\Debug\StringHelp.dll'

    其中TestDll是你在数据库中为这个程序集起的名字。

    注意,如果你的dll文件中,引用了其dll文件,那么必须在引入dll之前,先引用其程序集。如你的dll文件使用到了system.web dll文件,那么必须在引用TestDll之前

    以同样的方法引用system.web dll文件。

2.创建一个Function,使用该dll文件

     使用如下SQL语句

    

CREATE FUNCTION dbo.ToUpper  --该函数名字
(
@InputString as nvarchar(500)
)
RETURNS nvarchar(200)     --返回类型
AS EXTERNAL NAME TestDll.[StringHelp.ClassConvert].ToUpper

注意一下标红的那几个单词。

TestDll是指你程序集中dll的名称。

StringHelp是指dll文件中那个类的命名空间

ClassConvert是指dll文件中那个类的类名

ToUpper是指dll文件中那个被调用的静态方法

最后,便可以这样来调用该函数

print dbo.ToUpper('abc')

输出的结构为ABC                          

                                                每天进步一点点

                                                2015-03-09

  

在SQL Server引用dll的流程的更多相关文章

  1. Sql Server 调用DLL

    背景 在处理数据或者分析数据时,我们常常需要加入一定的逻辑,该些处理逻辑有些sql是可以支持,有些逻辑SQL则无能为力,在这种情况下,大多数人都会编写相关的程序来处理成自己想要的数据,但每次处理相同逻 ...

  2. PHP 5.3.X 连接MS SQL Server php_mssql.dll

    在网上搜索了一下PHP 5.3.X 连接SQL Server的办法,有人也遇到了这个问题 原来PHP 团队在PHP 5.3 中移除了SQL Server的驱动和库,而微软自己开发了针对PHP的SQL驱 ...

  3. SQL Server Management Studio 安装流程

    数据库的操作需要使用SQL Server Management Studio,不过也可以使用其他的: 下面是安装操作的步骤:如果你下载的压缩包,你需要先解压到一个文件夹里,然后双击setup.exe, ...

  4. Sql Server 与CLR集成

    .NET编程和SQL Server ——Sql Server 与CLR集成   一.SQL Server 为什么要与CLR集成 1. SQL Server 提供的存储过程.函数等十分有限,经常需要外部 ...

  5. .NET编程和SQL Server ——Sql Server 与CLR集成 (学习笔记整理-1)

    原文:.NET编程和SQL Server ——Sql Server 与CLR集成 (学习笔记整理-1) 一.SQL Server 为什么要与CLR集成 1. SQL Server 提供的存储过程.函数 ...

  6. [AlwaysOn Availability Groups]SQL Server错误日志(AG)

    SQL Server错误日志(AG) SQL Server错误日志会记录影响AG的时间,比如: 1.和Windows故障转移集群交互 2.可用副本的状态 3.可用数据的状态 4.AG endpoint ...

  7. sql server中常用方法函数

    SQL SERVER常用函数 1.DATEADD在向指定日期加上一段时间的基础上,返回新的 datetime 值. (1)语法: DATEADD ( datepart , number, date ) ...

  8. 在SQL Server 2008中调用.net,dll

    原文:在SQL Server 2008中调用.net,dll T-SQL的在执行普通的查询的时候是很高效的,但是在执行循环,判断这样的语句的时候效率就不那么的高了.这时可以借助CLR了,我们可以在SQ ...

  9. Sql Server 数据库中调用dll文件

    1.首先新建一个空的解决方案,并添加一个类库,代码如下,编译并生产dll using System; using System.Collections.Generic; using System.Da ...

随机推荐

  1. hdu 4404 Worms(多边形与圆的交)

    求出爆炸点的坐标,就成了多边形与圆相交面积的模板题了... #include<algorithm> #include<iostream> #include<cstring ...

  2. 服务器编程入门(4)Linux网络编程基础API

      问题聚焦:     这节介绍的不仅是网络编程的几个API     更重要的是,探讨了Linux网络编程基础API与内核中TCP/IP协议族之间的关系.     这节主要介绍三个方面的内容:套接字( ...

  3. STP学习总结

    STP学习总结 STP是广泛应用在二层的具有冗余的网络中用来消除环路的一种机制,当然二层环网中用来消除环路的技术还有RRPP和H3C的smart-link技术等. 一.STP的一些基本概念 STP是I ...

  4. Spring 类构造器初始化实例

    构造方法类Bean1 package com.hao947.bean; public class Bean1 { public Bean1() { System.out.println("b ...

  5. C++习题 虚函数-计算图形面积

    C++习题 虚函数-计算图形面积 Time Limit: 1 Sec  Memory Limit: 128 MB Submit: 122  Solved: 86 [cid=1143&pid=6 ...

  6. BEGINNING SHAREPOINT&#174; 2013 DEVELOPMENT 第15章节--开发SP2013工作流应用程序 总结

    BEGINNING SHAREPOINT® 2013 DEVELOPMENT 第15章节--开发SP2013工作流应用程序 总结         在SP2013中,工作流已经从SP Server中脱离 ...

  7. windows phone 获取手机图片库中图片(4)

    原文:windows phone 获取手机图片库中图片(4) 前置条件:手机和电脑未连接或连接电脑Zune软件关闭(与Zune软件连接时不允许访问图片库): 版本7.1 获取手机图片库图片的两种方式: ...

  8. Codeforces Round #256 (Div. 2) D. Multiplication Table(二进制搜索)

    转载请注明出处:viewmode=contents" target="_blank">http://blog.csdn.net/u012860063?viewmod ...

  9. iOS Dev (55) 获得本年度、月、日本和其他信息

    iOS Dev (55) 获得本年度.月.日本和其他信息 作者:大锐哥 博客:http://prevention.iteye.com - NSDate *now = [NSDate date]; NS ...

  10. linux 流量监控 ---iptraf的安装及使用

    一.安装iptraf 我用的是centos,切换到root用户,执行 yum install -y iptraf 二.使用 1.直接输入iptraf,进入软件,按任意键继续 2.我主要是第二项和第三项 ...