[计算机]整理的很经典的存储过程.doc_第1页
[计算机]整理的很经典的存储过程.doc_第2页
[计算机]整理的很经典的存储过程.doc_第3页
[计算机]整理的很经典的存储过程.doc_第4页
[计算机]整理的很经典的存储过程.doc_第5页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

作者:SEO浪子整理的很经典的存储过程实例1:只返回单一记录集的存储过程。银行存款表(bankMoney)的内容如下IduserIDSexMoney001Zhangsan男30002Wangwu男50003Zhangsan男40要求1:查询表bankMoney的内容的存储过程create procedure sp_query_bankMoneyasselect * from bankMoneygoexec sp_query_bankMoney注* 在使用过程中只需要把中的SQL语句替换为存储过程名,就可以了很方便吧!实例2(向存储过程中传递参数):加入一笔记录到表bankMoney,并查询此表中userID= Zhangsan的所有存款的总金额。Create proc insert_bank param1 char(10),param2 varchar(20),param3 varchar(20),param4 int,param5 int outputwith encryption -加密asinsert bankMoney (id,userID,sex,Money)Values(param1,param2,param3, param4)select param5=sum(Money) from bankMoney where userID=Zhangsango在SQL Server查询分析器中执行该存储过程的方法是:declare total_price intexec insert_bank 004,Zhangsan,男,100,total_price outputprint 总余额为+convert(varchar,total_price)go在这里再啰嗦一下存储过程的3种传回值(方便正在看这个例子的朋友不用再去查看语法内容):1.以Return传回整数 2.以output格式传回参数 3.Recordset传回值的区别:output和return都可在批次程式中用变量接收,而recordset则传回到执行批次的客户端中。实例3:使用带有复杂 SELECT 语句的简单过程下面的存储过程从四个表的联接中返回所有作者(提供了姓名)、出版的书籍以及出版社。该存储过程不使用任何参数。USE pubsIF EXISTS (SELECT name FROM sysobjects WHERE name = au_info_all AND type = P) DROP PROCEDURE au_info_allGOCREATE PROCEDURE au_info_allASSELECT au_lname, au_fname, title, pub_name FROM authors a INNER JOIN titleauthor ta ON a.au_id = ta.au_id INNER JOIN titles t ON t.title_id = ta.title_id INNER JOIN publishers p ON t.pub_id = p.pub_idGOau_info_all 存储过程可以通过以下方法执行:EXECUTE au_info_all实例4:使用带有参数的简单过程CREATE PROCEDURE au_info lastname varchar(40), firstname varchar(20)ASSELECT au_lname, au_fname, title, pub_name FROM authors a INNER JOIN titleauthor ta ON a.au_id = ta.au_id INNER JOIN titles t ON t.title_id = ta.title_id INNER JOIN publishers p ON t.pub_id = p.pub_id WHERE au_fname = firstname AND au_lname = lastnameGOau_info 存储过程可以通过以下方法执行:EXECUTE au_info Dull, Ann- OrEXECUTE au_info lastname = Dull, firstname = Ann- OrEXECUTE au_info firstname = Ann, lastname = Dull实例5:使用带有通配符参数的简单过程CREATE PROCEDURE au_info2lastname varchar(30) = D%,firstname varchar(18) = %ASSELECT au_lname, au_fname, title, pub_nameFROM authors a INNER JOIN titleauthor ta ON a.au_id = ta.au_id INNER JOIN titles t ON t.title_id = ta.title_id INNER JOIN publishers p ON t.pub_id = p.pub_idWHERE au_fname LIKE firstname AND au_lname LIKE lastnameGOau_info2 存储过程可以用多种组合执行。下面只列出了部分组合:EXECUTE au_info2- OrEXECUTE au_info2 Wh%- OrEXE

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论