标签:
--================================-- ylb:存储过程创建与操作--================================use pubsgo--一、无参存储过程--1,创建存储过程create procedure PTitlesasselect * from titlesgo--2,执行存储过程execute PTitlesgo--3,移除存储过程--drop procedure PTitlesgo--==============================-- ylb:存储过程-入参-- 16:44 2011/12/14--==============================use pubsgo--1,创建带入参存储过程select * from titles where type=‘business‘gocreate proc P_Titles_ByType@type char(12) --入参asselect * from titles where type=@type go--2,执行带参数的存储过程--a)方式一exec P_Titles_ByType @type=‘business‘go--b)方式二exec P_Titles_ByType ‘business‘go--P1:写一个存储过程,要求图书类型是business且单价大于10的所有信息--P1_1,创建存储过程select * from titleswhere type=‘business‘ and price>10gocreate proc P_Titles_ByTypeAndPrice@type char(12), --入参@price money --入参asselect * from titleswhere type=@type and price>@pricego--P1_2,执行存储过程exec P_Titles_ByTypeAndPrice @type=‘business‘,@price=10goexec P_Titles_ByTypeAndPrice @price=10,@type=‘business‘goexec P_Titles_ByTypeAndPrice ‘business‘,10go--是错的,当你直接给值时,一定注意参数的顺序和类型。--exec P_Titles_ByTypeAndPrice 10,‘business‘--================================-- ylb:存储过程-带入参和出参-- 16:44 2011/12/14--================================use pubsgoselect * from titles--P1:查图书编号是“BU1032”的图书的单价是多少?select price from titles where title_id=‘BU1032‘go--P1_1,创建create proc P_Titles_ByTitleID_SelectPrice@title_id varchar(6) --入参asselect price from titles where title_id=@title_idgo--P1_2,执行exec P_Titles_ByTitleID_SelectPrice ‘BU1032‘go--P2_1,创建create proc P_Titles_ByTitleID_SelectPrice2@title_id varchar(6), --入参@price money output --出参【出参加标识(output)】asselect @price=price from titles wheretitle_id=@title_id--出参的@在=左边go--1,先声明变量declare @price2 money--2,之后在调用exec P_Titles_ByTitleID_SelectPrice2 @title_id=‘BU1032‘,@price=@price2 output--3,再之后在查声明变量select @price2--出参要声明,配参后面要加output标识,之后再查声明变量。标签:
原文地址:http://www.cnblogs.com/wuzehao/p/5450226.html