Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1228137
  • 博文数量: 699
  • 博客积分: 6000
  • 博客等级: 准将
  • 技术积分: 4970
  • 用 户 组: 普通用户
  • 注册时间: 2008-10-15 13:45
文章分类

全部博文(699)

文章存档

2011年(1)

2008年(698)

我的朋友

分类:

2008-10-15 13:46:05

「过程」(Stored Procedures)是SQL Server 2005程序设计中最重要的一环,您将会发现,应用系统中的许多作业都会交由过程来完成。在以下的操作步骤中,我们将带领大家利用Visual Studio 2005整合式开发环境,实际建立一个CLR存储过程(采用Visual ),并示范如何使用它:

 

1.           如图表1所示,选取Microsoft Visual Studio 2005菜单指令来开启Visual Studio 2005的整合式开发环境。

 


 

图表1

 

2.           「项目」菜单中选取「新增/项目」指令。

3.           如图表2所示,选取「类别库」模板,然后依序指定项目名称(SayHello)、存放位置、以及方案名称(SayHello)之后,按一下「确定」按钮。

 

 

图表2

 

4.           Visual Studio 2005整合式开发环境的「方案总管」中,使用鼠标右键按一下预设建立的Class1.cs并从快捷菜单中选取「删除」指令以便将它删除。

5.           「项目」菜单中选取「加入新项目」指令。

6.           如图表3所示,于「加入新项目」对话框中,选取「类别」模板,然后以SayHelloClass.cs作为类别档的文件名称,然后按一下「加入」按钮。

 

 

图表3

 

7.           于程序代码编辑器中,将SayHelloClass类别的程序代码改写如下:

using Microsoft.SqlServer.Server;

namespace SayHello
{
 public class SayHelloClass
 {
  [Microsoft.SqlServer.Server.SqlProcedure()]
  public static void SayHello(ref string greeting)
  {
   SqlMetaData columnInfo = new SqlMetaData("问候", SqlDbType.NVarChar, 12);
  
   SqlDataRecord greetingRecord = new SqlDataRecord(new SqlMetaData[] { columnInfo });
  
   greetingRecord.SetString(0, "大家好,我是章立民!");
  
   // 呼叫 Pipe 对象的 Send 方法将单一数据列结果集(也就是 SqlDataRecord 对象)
   // 直接传送给客户端。
   SqlContext.Pipe.Send(greetingRecord);
  
   // 将文字符串指派给输出参数。
   greeting = "现在时间是 " + DateTime.Now.ToString() + " --- 章立民研究室向您问好!";
  }
 }
}

上述程序代码中的SayHello程序是一个公用静态方法,而它也就是CLR存储过程所实际呼叫的对象。

 

[1]  

【责编:Peng】

--------------------next---------------------

阅读(373) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~