C#开发学习——存储过程
举个例子:
带输入参数的存储过程
计算班级中英语和数学不及格的人数
if(exists(select * from sys.objects where name='usp_GetFailCount'))
drop proc usp_GetFailCount
go
create proc usp_GetFailCount--开始创建存储过程
@EngPass int,--存储过程的参数不需要加declare
@MathPass int
as
声明变量存储英语成绩不及格和数学成绩不及格的人数
declare @engCount int
declare @mathCount int
--给人数赋值
select @engCount=Count(*) from Score where english<@EngPass
select @mathCount=Count(*) from Score where math<@MathPass
--输出结果
select '英语不及格的人数',@engCount
select '数学不及格的人数',@mathCount
执行存储过程
exec usp_GetFailCount
--传入两个需要的参数
exec usp_GetFailCount 80,60
--想让英语和数学的及格分数线都是60
exec usp_GetFailCount @EngPass=60,@MathPass=60
总结:
存储过程如果没有默认的参数
传参的方式
1.直接传入跟参数类型一样的值
2.@参数名=值,个数必须跟参数要求的一致
存储过程如果有默认的参数
1.不传,采用的默认值
2.传1个,另一个就是默认值
3.传2个,会把默认值覆盖
带输出参数的存储过程
if(exists(select * from sys.objects where name='usp_GetEngFailCount'))
drop proc usp_GetEngFailCount
go
create proc usp_GetEngFailCount
@EngPass int,--输入参数
@MathPass int,
将数学成绩不及格的人数 使用输出参数返回
@MathFailCount int output--输出参数
as
先求英语不及格的人数
declare @EngFailCount int
select @EngFailCount=Count(*) from Score where english<@EngPass
select @MathFailCount=Count(*) from Score where math<@MathPass
-只打印英语不及格的人数
select '英语不及格的人数',@EngFailCount
Declare @mCount int
--调用
exec usp_GetEngFailCount 60,60,@mCount output
输出数学不及格的人数
select '数学不及格的人数',@mCount
C#开发学习——存储过程的更多相关文章
- 步步为营 SharePoint 开发学习笔记系列总结
转:http://www.cnblogs.com/springyangwc/archive/2011/08/03/2126763.html 概要 为时20多天的sharepoint开发学习笔记系列终于 ...
- Android开发学习之路-RecyclerView滑动删除和拖动排序
Android开发学习之路-RecyclerView使用初探 Android开发学习之路-RecyclerView的Item自定义动画及DefaultItemAnimator源码分析 Android开 ...
- web前端开发学习内容
应该 具备的 知识技能 :懂web标准,熟练手写 xhtml css3 并符合 符合w3c标准 代码能 兼容主流浏览器.ie6.7.8.9 ff 等. ...
- Android开发学习路线图
Android开发学习方法: Android是一个比较庞大的体系,从底层的Linux内核到上层的应用层,各部分的内容跨度也比较大.因此,一个好的学习方法对我们学习Android开发很重要. 在此建议, ...
- NET开发学习项目资源(2)
NET开发学习项目资源 击标题链接即可下载. 目录: 1.征婚交友网站 前台交友信息和后台会员管理两大部分组成. 前台功能模块 该模块主要包括查询交友信息.显示交友信息.会员登录.会员信息管理.修改会 ...
- Civil 3D API二次开发学习指南
Civil 3D构建于AutoCAD 和 Map 3D之上,在学习Civil 3D API二次开发之前,您至少需要了解AutoCAD API的二次开发,你可以参考AutoCAD .NET API二次开 ...
- 【前端】移动端Web开发学习笔记【2】 & flex布局
上一篇:移动端Web开发学习笔记[1] meta标签 width设置的是layout viewport 的宽度 initial-scale=1.0 自带 width=device-width 最佳实践 ...
- 【前端】移动端Web开发学习笔记【1】
下一篇:移动端Web开发学习笔记[2] Part 1: 两篇重要的博客 有两篇翻译过来的博客值得一看: 两个viewport的故事(第一部分) 两个viewport的故事(第二部分) 这两篇博客探讨了 ...
- .net 网站开发学习资源
慕课网 前端基础学习 http://www.imooc.com/course/list?c=fe 了解需求 例子之一 http://wenku.it168.com/d_000517899.shtml ...
随机推荐
- [DevExpress]利用LookUpEdit实现类似自动提示效果
原文:[DevExpress]利用LookUpEdit实现类似自动提示效果 关键代码: public static void BindWithAutoCompletion(this LookUpEdi ...
- INNO SETUP数据库的连接与创建
原文:INNO SETUP数据库的连接与创建 说明一下:这块程序的前半部分在INNO SETUP的实例里面就有,而后面如果对数据库进行备份和还原在实例里面没有,在网上也不好找,是本人费了好大劲一句一句 ...
- 利用sqlclr实现数据库服务器端数据加密解密
在公司中一同事用sqlclr写数据迁移自动化执行脚本,发现他在执行脚本时对数据进行了加密. 个人觉得利用sqlclr对数据进行加密是一个解决数据网络安全传输的不错的方案. 以下是一个小的案例: --- ...
- Varnish缓存服务
Varnish缓存服务详解及应用实现 1.varnish的基本介绍 Varnish 的作者Poul-Henning Kamp是FreeBSD的内核开发者之一,他认为现在的计算机比起1975年已 ...
- 编辑控件CKEditor和CKFinder
-使用HTML编辑控件CKEditor和CKFinder Web开发上有很多HTML的编辑控件,如CKEditor.kindeditor等等,很多都做的很好,本文主要介绍在MVC界面里面,CKEdit ...
- IIS7.5下的httpModules设置
部署到IIS7.5上httpModule不起作用了,原来是iis7里面的网站应用程序池使用了默认的“集成模式”,所以所有的http请求处理都托管给了 IIS,web.config里面的配置就不起效了. ...
- sqlserver中数据的四种插入方式
1.insert into stuInfo(name,stuId) values('李洁','19291727')insert into stuInfo(name,stuId) values('李康' ...
- Orchard中的Host和Tenant
Orchard的多个子站点特性 Orchard中可以支持多个子站点.当你运行Orchard的时候,通常一个网站运行在一个应用程序域中.这也是一般ASP.NET应用程序区分两个网站的方法,也就是说两 ...
- mac 下nginx加入开机启动
通过brew install nginx后设置开机启动项 sudo cp /usr/local/opt/nginx/*.plist /Library/LaunchDaemonssudo launchc ...
- Competitive