SQL Server关于存储过程的一点简单使用心得
===========================创建无参无返回值的存储过程===========================
create proc pro_name
as
--要执行的sql语句--
select * from tablename
--执行存储过程--
exec pro_name
===========================创建有参无返回值的存储过程===========================
--带参存储过程
create proc proc_find_stu(@startId int, @endId int)
as
select * from student where id between @startId and @endId
--执行存储过程
exec proc_find_stu 2, 4;
===========================有参有返回值的存储过程===========================
create proc findUserNameByID
(
@uID int, --sql语句的条件参数
@uName varchar(100) output --带output结尾的是要作为返回值的参数
)
as
select @uName=USER_NAME from dbo.User_Info where User_ID = @uID
--执行
begin
declare @name varchar(100)
-- 此处假设是已知的id号
exec findUserNameByID 3654,@name output
select @name
end
--执行完成后输出对应的用户姓名
===========================分页存储过程================================
-----------创建分页存储过程--------------
create proc selectDivicebyPage
(
@pageIndex int,--页码
@pageSize int--单页记录条数
)
as
declare
--定义每页的起始行数和终止行数
@startRow int=(@pageIndex-1)*@pageSize+1,
@endRow int = (@pageIndex-1)*@pageSize + @pageSize
--或者如下定义
--declare @startRow int, @endRow int
-- set @startRow = (@pageIndex - 1) * @pageSize +1
-- set @endRow = @startRow + @pageSize -1
--此处一次罗列出必须的列,不需要的列不罗列出来,从而提高查询的执行速率
select User_ID,User_Name,User_Password,User_Email
from (select ROW_NUMBER() over(order by User_ID asc) as rownumber,* from dbo.User_Info) a
where a.rownumber between @startRow and @endRow
---------执行分页存储过程------------
--页码为3,单页10条记录
exec selectDivicebyPage 3,10
===========================修改存储过程===========================
alter proc proc_get_student
as
select * from student;
===========================删除存储过程===========================
DROP PROCEDURE Proc_name
SQL Server关于存储过程的一点简单使用心得的更多相关文章
- 在易语言中调用MS SQL SERVER数据库存储过程方法总结
Microsoft SQL SERVER 数据库存储过程,根据其输入输出数据,笼统的可以分为以下几种情况或其组合:无输入,有一个或多个输入参数,无输出,直接返回(return)一个值,通过output ...
- SQL Server 2008 存储过程,带事务的存储过程(创建存储过程,删除存储过程,修改存储过
SQL Server 2008 存储过程,带事务的存储过程(创建存储过程,删除存储过程,修改存储过 存储过程 创建存储过程 use pubs --pubs为数据库 go create proc ...
- SQL Server中存储过程 比 直接运行SQL语句慢的原因
问题是存储过程的Parameter sniffing 在很多的资料中都描述说SQLSERVER的存储过程较普通的SQL语句有以下优点: 1. 存储过程只在创造时进行编译即可,以后每次执行存储过 ...
- SQL Server 优化存储过程的七种方法
原文:SQL Server 优化存储过程的七种方法 优化存储过程有很多种方法,下面介绍最常用的7种. 1.使用SET NOCOUNT ON选项 我们使用SELECT语句时,除了返回对应的结果集外,还会 ...
- SQL Server中存储过程比直接运行SQL语句慢的原因
原文:SQL Server中存储过程比直接运行SQL语句慢的原因 在很多的资料中都描述说SQLSERVER的存储过程较普通的SQL语句有以下优点: 1. 存储过程只在创造时进行编译即可,以 ...
- 收缩SQL Server日志不是那么简单
收缩SQL Server日志不是那么简单的(翻译) 原文地址:http://rusanu.com/2012/07/27/how-to-shrink-the-sql-server-log/ 说明:本 ...
- 在sql server中建存储过程,如果需要参数是一个可变集合怎么处理?
在sql server中建存储过程,如果需要参数是一个可变集合的处理 原存储过程,@objectIds 为可变参数,比如 110,98,99 ALTER PROC [dbo].[Proc_totalS ...
- ADO.NET访问SQL Server调用存储过程带回参
1,ADO.NET访问SQL Server调用存储过程带回参 2,DatabaseDesign use northwind go --存储过程1 --插入一条商品 productname=芹菜 un ...
- SQL Server中的CLR编程——用.NET为SQL Server编写存储过程和函数
原文:SQL Server中的CLR编程--用.NET为SQL Server编写存储过程和函数 很早就知道可以用.NET为SQL Server2005及以上版本编写存储过程.触发器和存储过程的,不过之 ...
随机推荐
- 黄聪:“不允许对64位应用程序进行修改”的解决方法 --“Changes to 64-bit applications are not allowed.”
在64位系统中使用VS对程序(32位的)进行调试,出现“不允许对64位应用程序进行修改”的提示,如下图所示: 解决方法:在VS主菜单上选择“生成” or "Build"——“配置管 ...
- ddt数据驱动
数据驱动原理 1.测试数据为多个字典的list类型 2.测试类前加修饰@ddt.ddt 3.case前加修饰@ddt.data() 4.运行后用例会自动加载成三个单独的用例 5.测试结果: Testi ...
- UI“三重天”之appium(一)
官方介绍: Appium is an open-source tool for automating native, mobile web, and hybrid applications on iO ...
- ggplot map
ggplot {ggplot2} R Documentation Create a new ggplot Description ggplot() initializes a ggplot objec ...
- OpenMP n 体问题
▶ <并行程序设计导论>第六章中讨论了 n 体问题,分别使用了 MPI,Pthreads,OpenMP 来进行实现,这里是 OpenMP 的代码,分为基本算法和简化算法(引力计算量为基本算 ...
- windows 关机 重启 命令
关机 shutdown -s -t 0 重启 shutdown -r -t 0 重启电脑windows 立即关机 shutdown -s 三十分钟后关机 shutdown -s -t 30 举例说明一 ...
- HBase安装和启动
目录 认识HBase 前期准备 1. 解压HBase 2. 修改3个配置文件(配置文件目录:hbase-0.96.2-hadoop2/conf/) 3. 将hadoop的hdfs-site.xml和c ...
- shell编程变量赋值
[shell编程变量赋值] 1.等号两边均不能有空格存在.例, a="hello world" 2.变量和其它文字以{}或空格格开,否则会混淆.例, 有时候变量名可能会和其它文 ...
- 「红米 2A 标准版」闪屏救砖、更正官方线刷救砖工具
问题描述 用 ES 浏览器 卸载了内置软件后重启无法开机,停在 MI android 界面并出现屏幕忽明忽暗的现象,无法进入系统. 漫长的救砖探索,直白的解决方案 总体来说,林林总总下了六个 G 的教 ...
- Java常用的输出调试技巧
--------siwuxie095 Eclipse 开发中常用的输出调试技巧: 先在左侧的 Package Explorer,右键->New->J ...