SQL Server 2005 创建简单的存储过程--总结分析

最近由于工作需要,简单了解了下SQL Server 2005 数据库创建简单的在存储过程。
一、首先说明如何创建存储过程:
CREATE PROCEDUER my_pro @inputDate varchar ,
//声明输入变量 @Result varchar(255) output
//声明输出变量 AS declare @variable1 varchar(255)
//声明varchar变量 declare @variable2 int
//声明整形变量 BEGIN IF ...(条件) BEGIN ....(执行内容) END ELSE BEGIN ....(执行内容) END END
以上就是创建一个简单的存储过程方法。

二、删除存储过程 DROP PROCEDURE my_pro

三、执行存储过程
(1)执行没有参数的存储过程:EXECUTE my_pro
(2)执行有参数的存储过程:
EXECUTE my_pro '输入变量'
(1)执行有参数且有返回值(即有输出变量)的存储过程:
declare @Result varchar(1024)
//声明输出变量 EXECUTE my_pro '输入变量' @Result output
//让该存储过程输出值保存到@Result中 select @Result as result
//查询结果返回

四、例子下面需要将查询多条记录结果,使用一条返回值进行返回。
例如:有表Test中,其中有两个字段为Test01与Test02,把Test01 > 10000的记录,让查询Test02结果进行合并,合并成一条记录来返回。
则返回结果为:WSXEDCRFVTGB. Test01 Test02 10000 QAZ 10001 WSX 10002 EDC 10003 RFV 10004 TGB 那么,使用存储过程,使用存储过程中的游标,可以进行for循环来进行多条记录的合并。将可以解决这个问题。
具体存储过程如下:
DROP PORCEDURE my_Cursor
//习惯性,创建之前,先看看该存储过程是否存在 CREATE PROCEDURE my_Cursor @id int ,
//声明输入变量
@Result varchar(255) output
//声明输出变量,注意一定要有output关键字,否则默认为输入变量 AS Declare city_cursor cursor for
–声明游标变量 Select [Test01] from Test where Test01 > @id
–其中@id为输入变量 Set @Result = ‘'
–设置变量@Result值 Declare @Field int
–声明临时存放查询到的Test01的变量 Open city_cursor
–打开游标 Fetch next from city_cursor into @Field
–将实际Test01赋给变量,进行循环 While(@@fetch_status=0)
–循环开始 BEGIN If @Result = ‘' BEGIN Select @Result = Test02 from Test where Test01 = @Field END ELSE BEGIN Select @Result = @Result + ‘,' + Test02 from Test where Test01 = @Field END Fetch next from city_cursor into @Field
–循环下一个Test01 END Close city_cursor
–关闭游标 Deallocate city_cursor
–释放游标引用 GO (结束) 以下是执行 Declare @Result varchar(1024) EXECUTE my_pro 10000 ,@Result output
–output关键字一定得写,如果是多个输入参数,则使用“,”号来区分 Select @Result as result –查询结果

时间: 2024-12-21 05:57:03

SQL Server 2005 创建简单的存储过程--总结分析的相关文章

SQL Server 2005 创建简单的存储过程--总结分析_MsSql

最近由于工作需要,简单了解了下SQL Server 2005 数据库创建简单的在存储过程.一.首先说明如何创建存储过程: CREATE PROCEDUER my_pro @inputDate varchar ,//声明输入变量 @Result varchar(255) output //声明输出变量 AS declare @variable1 varchar(255)//声明varchar变量 declare @variable2 int //声明整形变量 BEGIN IF ...(条件) BE

Sql Server 2005创建数据库及登陆用户图解教程

本文我们将详情介绍Sql Server 2005创建数据库.创建登录用户的步骤. 建立Sql Server 2005数据库 如图:点击新建数据库弹出,如下窗口,在其中进行数据库创建的操作. 此处按照图中所示,填写对应的数据,数据库名我们可以命得规范也不让轻意的让别的猜到,所有者选默认就可以了,我们还可以选择设置数据库文件及日志文件的大小及增长空间,还有数据库的存放路径,不过也可以使用默认的. 创建MSSQL2005登陆账户 在左侧菜单中展开安全性---选择登陆名,单击右键进行新登陆名的创建 注意

SQL server 2005的简单分页程序

  SQL Server 2005增加了不少新特性,其中NTILE和ROW_NUMER使得我们不再为SQL如何灵活方便的分页伤脑筋了(不必再羡慕Oracle等数据库了). 下面就是一个很简单的分页查询语句: DECLARE @rows_per_page AS INTEGER DECLARE @current_page AS INTEGER DECLARE @total_pages AS INTEGER -- 设置每页的行数 SET @rows_per_page = 20 -- 设置要显示的页号(

SQL Server 2005与DB2 8.2对比分析

本文对SQL Server 2005与DB2 8.2这两种数据库平台进行对比,结果显示在构建数据库应用程序时,使用SQL Server 2005(代码代号"Yukon")结合Visual Studio进行开发比使用DB2 UDB 8.2(代码代号"Stinger")结合Visual Studio有着显著的优势. 对比结果概述 本文中对两种数据库平台的对比结果显示了在构建数据库应用程序时,使用SQL Server 2005(代码代号"Yukon")

SQL SERVER 2005开始提供对存储过程签名

SQLSERVER 2005开始提供的对存储过程签名(signature)是我非常喜欢的. 如果我们要编写一个存储过程,执行该存储过程里的代码需要权限P,并且我们想要用户Alice可以执行这个存储过程,但是我们不想将权限P直接赋予给用户Alice,我们可以用证书(certificate)对这个存储过程进行签名来完成这一需求: a)&http://www.aliyun.com/zixun/aggregation/37954.html">nbsp;     如果P是一个数据库级别的权限

sql server 2005-SQL Server 2005 创建数据库时报208错误如何解决

问题描述 SQL Server 2005 创建数据库时报208错误如何解决 创建 对于 数据库"a0718152616"失败. (Microsoft.SqlServer.Smo)执行 Transact-SQL 语句或批处理时发生了异常.(Microsoft.SqlServer.ConnectionInfo)Invalid object name 'ADDRESS'. (Microsoft SQL Server错误:208) 求高人指点如何解决!!! 详细信息如下: 创建 对于 数据库&

探讨SQL Server 2005.NET CLR编程

本文将解释如何在SQL Server 2005中以尽可能最简单的方法创建基于.NET的CLR子例程.本文主要针对在服务器端使用SQL Server 2005的.NET开发者. 一.创建SQL Server 2005数据库 这一节主要讨论创建一个将用于本文中的数据库和表格.详见下列步骤: · 执行"Start->Programs->Microsoft SQL Server 2005->SQL Server Management Studio",并使用必要的证书连接到你的

SQL Server 2005无法远程连接的解决方法

  有时候我们需要链接某一台服务器上的数据库,我们一下的操作都是在该台服务器上操作的:   一.为 SQL Server 2005 启用远程连接 1. 单击"开始",依次选择"程序"."Microsoft SQL Server 2005"."配置工具",然后单击"SQL Server 外围应用配置器". 2. 在"SQL Server 外围应用配置器"页上,单击"服务和连接的外

配置 SQL Server 2005 以允许远程连接的方法

例如,在使用 SQLCMD 实用工具连接到 SQL Server 时收到以下错误消息: 复制代码 代码如下: Sqlcmd:错误:Microsoft SQL Native Client:建立到服务器的连接时发生错误.连接到 SQL Server 2005 时,默认设置 SQL Server 不允许远程连接这个事实可能会导致失败. 如果没有将 SQL Server 2005 配置为接受远程连接,则可能会发生此问题.默认情况下,SQL Server 2005 Express Edition 和 SQ