SQL Server2008 学习之(十五) :存储过程的创建与修改
来源:互联网 发布:淘宝打不开怎么办 编辑:程序博客网 时间:2024/04/25 05:54
存储是数据库开发中经常使用的操作,可以把许多重复的操作(只是一些参数不同)模块化,与编程中的函数类似,但是存储过程的功能大于函数。存储过程的定义如下。
1.创建存储过程
创建存储过程的语法如下。
1.1 一个简单的存储过程
新建查询中输入
create procedure pro_testasselect * from Sales.SalesTerritory
即可创建一个简单的存储过程,结果储存在AdventureWorks2012——>可编程性——>存储过程中,调用时输入 exec pro_test 即可查询到对应表中的信息,如下图所示。
1.2 带参数的存储过程
在新建查询中输入
create procedure pro_test@region nvarchar(10) --创建一个变量用来存储数据asselect * from Sales.SalesTerritory where CountryRegionCode=@region 把要存储的数据赋值给region
即可,用 exec pro_test @region='US' 进行查询。结果如下图。
1.3使用输出参数
在制定输入列表时可以指定一部分参数作为输出参数。
在新建查询中输入
create procedure pro_test@ter int,@sales int output --定义一个输出参数salesasselect @sales=a.SalesLastYear from Sales.SalesTerritory a where TerritoryID=@ter --ter获取territoryID具体值,sales输出对应行的SalesLastYear值declare @out intexec pro_test @ter='2',@sales=@out output --在查询时需要新建一个参数out以存储sales值print @out
即可,结果如下图,输出了对应territoryID的SalesLastYear值
2.修改与删除存储过程
2.1修改存储过程
修改存储过程的语法如下。
修改存储过程的方法很简单,直接在已有的存储过程单击右键修改,出现修改界面,如下图,在图中对红框部分的功能进行修改即可。
2.2 删除存储过程
删除存储过程的语法如下。
新建查询中输入 drop procedure pro_test 即可。
3.临时存储过程
与创建临时表相似,存储过程也分为本地临时过程和全局临时过程。
创建临时表的方法参照:http://blog.csdn.net/s1314_JHC/article/details/78523844
- 本地临时表以#开头,仅对当前用户可见,从SQL Server断开连接后被删除。
- 全局临时表以##开头,对所有用户可见,从SQL Server断开连接后被删除。
创建临时存储过程时,在新建查询中输入
create procedure #pro_test --#pro_test表示本地临时过程asselect * from Sales.SalesTerritory
即可,结果如下。如果再创建一个新的查询,则会出错。如下右图。
阅读全文
0 0
- SQL Server2008 学习之(十五) :存储过程的创建与修改
- SQL Server2008 学习之(八) :创建与修改架构
- SQL Server2008 学习之(四) :创建和修改数据表
- SQL Server2008 学习之(六) :视图的创建、修改等基本操作
- SQL Server2008创建无参存储过程
- SQL Server2008创建有参存储过程
- SQL Server2008 学习之(十六) :触发器的创建与使用
- SQL Server2008 学习之(十) :插入与修改SQL数据
- SQL Server2008 学习之(十二) :XML存储与查询技术
- SQL SERVER2008存储过程调试
- SQL Server2008存储过程调试
- SQL Server2008 学习之(七) :索引的创建及管理
- SQL Server2008学习之(二) :软件下载与安装
- SQL Server2008 学习之(五) :规则与约束的用法与联系
- SQL Server2008 学习之(十七) :数据库的备份与恢复
- SQL SERVER2008 存储过程、表、视图、函数的权限
- SQL SERVER2008 存储过程、表、视图、函数的权限
- SQL SERVER2008 存储过程、表、视图、函数的权限
- 汇编中retn 4的含义详析
- 生产环境drbd+heartbeat+mysql(mysql一主多从)部署安装
- KNN python code
- python Web 之基石
- python中str函数isdigit、isdecimal、isnumeric的区别
- SQL Server2008 学习之(十五) :存储过程的创建与修改
- SpringWeb项目和SpringBoot微服务项目如何进行junit调试
- 内部排序之 快速排序
- python 控制台输出中文乱码问题
- 高仿xp系统画板实现
- Openssl中Android编译参数错问题解决方案
- Git常用命令
- ovirt+ceph的虚拟机xml
- linux常用命令