ورود

View Full Version : اموزش: ساخت رویه های ذخیره شده در اس کیوال سرور



oliya24
پنج شنبه 18 فروردین 1390, 20:18 عصر
سلام دوستان عزیز خسته نبا شید من این تاپیک رو زدم تا همه یه چیزی یاد بگیریم
برای ساخت رویه ذخیره شده از دستور create procedure استفاده میشود :

خوب بریم سراغ چند مثال ساده:

create procedure df
as select * from student

این رویه برای نمایش از تمام داده های جدول student بود و اما برای اجرای این رویه ذخیره شده باید از دستور زیر استفاده کنید


exec df

دستور exec یک کلمه کلیدی است و df نام رویه ذخیره شده است

oliya24
پنج شنبه 18 فروردین 1390, 21:01 عصر
دستوری که نوشتیم یک رویه ذخیره شده بود که هیچ پارامتری ندارد حال اگر بخواهیم این رویه رو طوری طراح کنیم که اطلاعات خاصی را برگرداند باید چه کنیم؟؟؟؟؟؟
create procedure hf
@ ty nvarchar(22)
as
select * from student
where lname =@ty
go
این از رویه ذخیره شده با پارامتر @ty برای نشان دادن پارامتر است حالا برای اجرای این رویه هم کمی تفاوت هست


exec hf 'mohamadi'

oliya24
جمعه 19 فروردین 1390, 14:26 عصر
برای ساختن رویه ذخیره شده البته با پارامتر که بتونه عمل insert رو انجام بده به صورت زیر عمل میکنیم
create procedure k
@f nvarchar(22),
@r nvarchar(22)
as
insert into company (name,tel) values(@f,@r)

go
exec k 'benyamin','1234567'
select * from company
نام رویه ذخیره شده k است و نام جدول هم company که دارای 2 فیلد نام و تلفن است که با فرمان exec داده ها در جدول مذبور درج میشوند
دوستان من تازه دارم این مبحث رو یاد میگیرم و از تمامی شما اساتید بزرگ تقا ضا دارم من رو این تاپیک همیاری کنید و با مثالهای خودتان به این تاپیک جلا دهید

oliya24
جمعه 19 فروردین 1390, 16:54 عصر
سلام خسته نباشید ایند هم یه رویه ذخیره شده که کارش ویرایش کردن رکورد هست هم میشه براش شرط گذاشت و هم میشه براش شرط نگذاشت من هر 2 رو میگم:
create procedure lo
@name nvarchar(22),
@id int,
@tel varchar(22)
as
update company
set name=@name,
id=@id,
tel=@tel
where id=@id
go
exec lo 'benyamin','1','12345'
در مورد شرط فرض کنید که در داخل جدول رکوردی داریم که در فیلد id یک عدد یک وجود داره طبق شرطی که ما نوشتیم این تمام فیلدهایی که در فیلد id انها عدد 1 با شه رو به نام benyamin , 12345 تغییر میده اما id تغییر نمیکنه

oliya24
جمعه 19 فروردین 1390, 17:33 عصر
خوب نوبت به رویه ذخیره شده مربوط به دستور delete شد پس بریم:
create procedure opsq
@name nvarchar(22),
@id int,
@tel varchar(22)
as
delete from company
go

exec opsq 'benyamin','12','1234'
در اینجا هم فرض را بر این میگذاریم که چنین رکوردی در جدول درج شده البته از قبل اگر بخواهید شرط هم بگذارید که دیگه فکر نکنم مشکلی داشته با شید
خوب تا به حال این 3 کار رو هم من و هم شما یاد گرفتید تا پستهای بعدی >>>>>>>>...

oliya24
جمعه 19 فروردین 1390, 20:06 عصر
دوستان بریم سراغ مباحث تئوری : رویههای ذخیره شده 3 نوع پارامت را میپذیرند 1: پارامترهای ورودی ......2:پارامترهای خروجی .....3 پارامترهای مقدار بازگشتی
من تا به حال پارامترهای ورودی رو گفتم //////////////////////
تا بعد

iandyouwe
شنبه 22 بهمن 1390, 08:33 صبح
خوندم و استفاده دارم میکنم خیلی هم عالی است

http://www.w3schools.com/sql/sql_update.asp