除了创建普通的存储过程外,还可以执行本机的文件操作、程序操作等,相当于功能扩展(需要mssql中配置权限)

但这样做有点超出数据库的功能了,按理说数据库只负责存储。

 

好像只能是单体的dll,引用其他dll后再注册到mssql时找不到

 

-----------------------------------------------------------------

转自:

https://www.cnblogs.com/aji88/archive/2009/06/04/1496219.html

在Sql Server 2005中,可以创建基于.Net Framework公共语言运行时(CLR)在存储过程。

要创建一个CLR存储过程,大致步骤如下:

  1. 开启SQL Server 2005的CLR支持。
  2. 编写CLR存储过程内容,并把类编译成DLL文件。
  3. 注册程序集。
  4. 创建引用程序集的存储过程。
  5. 执行CLR存储过程。

一.开启SQL Server 2005的CLR支持。

exec sp_configure 'clr','1'
go

reconfigure
go

 

二.编写CLR存储过程(以C#为例)

打开vs2005后,新建一项目,Visual C#->数据库,选择“SQL Server项目”,然后会弹出一个选择数据库的对话框,设置好要访问的数据库。在项目中添加一个存储过程。文件名是CLR_SP.CS

c# clr创建mssql的存储过程、函数

 

在CLR_SP.CS中输入如下代码:

 

c# clr创建mssql的存储过程、函数
sb.ToString();           

            conn.Close();

        }
    }
};
c# clr创建mssql的存储过程、函数

 

然后选择“生成”-》“生成<项目名称>”,这样相应的就编译成了相应的DLL文件。

三.注册程序集

注册程序集有三种方法:

1.在SQL Server Management studio 里有注册向导的窗口
c# clr创建mssql的存储过程、函数
在程序集路径中选择DLL文件
c# clr创建mssql的存储过程、函数

2.用SQL代码

GO

 

3.在vs2005中选择“生成”-》“部署<项目名称>”,则会直接在相应的数据库里部署程序集。
c# clr创建mssql的存储过程、函数

四.创建引用程序集的存储过程。

注册完成后,可以创建引用程序集的存储过程,如下代码:

EXTERNAL NAME Clr_SPs.StoredProcedures.Clr_Select

其中Clr_sps是程序集的名称,StoredProcedures是类的名称,Clr_Select是静态方法的名称。


五.执行CLR存储过程。

 

@r

 

这样的话,我们就可以利用sql Server 2005来执行一些非数据类的操作,比如发email,执行FTP操作等。。。

在Sql Server 2005中,可以创建基于.Net Framework公共语言运行时(CLR)在存储过程。

要创建一个CLR存储过程,大致步骤如下:

  1. 开启SQL Server 2005的CLR支持。
  2. 编写CLR存储过程内容,并把类编译成DLL文件。
  3. 注册程序集。
  4. 创建引用程序集的存储过程。
  5. 执行CLR存储过程。

一.开启SQL Server 2005的CLR支持。

exec sp_configure 'clr','1'
go

reconfigure
go

 

二.编写CLR存储过程(以C#为例)

打开vs2005后,新建一项目,Visual C#->数据库,选择“SQL Server项目”,然后会弹出一个选择数据库的对话框,设置好要访问的数据库。在项目中添加一个存储过程。文件名是CLR_SP.CS

c# clr创建mssql的存储过程、函数

 

在CLR_SP.CS中输入如下代码:

 

c# clr创建mssql的存储过程、函数
sb.ToString();           

            conn.Close();

        }
    }
};
c# clr创建mssql的存储过程、函数

 

然后选择“生成”-》“生成<项目名称>”,这样相应的就编译成了相应的DLL文件。

三.注册程序集

注册程序集有三种方法:

1.在SQL Server Management studio 里有注册向导的窗口
c# clr创建mssql的存储过程、函数
在程序集路径中选择DLL文件
c# clr创建mssql的存储过程、函数

2.用SQL代码

GO

 

3.在vs2005中选择“生成”-》“部署<项目名称>”,则会直接在相应的数据库里部署程序集。
c# clr创建mssql的存储过程、函数

四.创建引用程序集的存储过程。

注册完成后,可以创建引用程序集的存储过程,如下代码:

EXTERNAL NAME Clr_SPs.StoredProcedures.Clr_Select

其中Clr_sps是程序集的名称,StoredProcedures是类的名称,Clr_Select是静态方法的名称。


五.执行CLR存储过程。

 

@r

 

这样的话,我们就可以利用sql Server 2005来执行一些非数据类的操作,比如发email,执行FTP操作等。。。

相关文章:

  • 2021-12-17
  • 2021-06-12
  • 2021-08-31
  • 2021-05-02
  • 2021-10-11
  • 2022-12-23
  • 2021-06-05
  • 2021-08-02
猜你喜欢
  • 2022-12-23
  • 2022-02-10
  • 2022-02-24
  • 2022-02-06
  • 2021-10-30
  • 2022-12-23
相关资源
相似解决方案