مربوط به مبحث(Stored Procedure) رویه ها
ابتدا کوئری زیر را اجرانمایید تاجدول« نمره دانشجویان »ساخته شود.
CREATE TABLE [dbo].[TStudent](
[id] [int] IDENTITY(١,١) NOT NULL,
[name] [nvarchar](٥٠) NOT NULL,
[studentId] [int] NOT NULL,
[score] [int] NOT NULL,
CONSTRAINT [PK_TStudent] PRIMARY KEY CLUSTERED
(
[id] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF,
ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
١. رویه ای بنویسید که نام و شماره دانشجویی و نمره دانشجو را دریافت و اگر نمره کوچکتریا مساوی ٢٠ بود در دیتابیس درج کند و شناسه ی سطر درج شده را برگرداند و اگر نمرهبالاتر از ٢٠ بود سطری درج نشود و مقدار صفر برگشت داده شود.
٢. رویه ای بنویسید که با دریافت شناسه، نمره دانشجو را حذف نماید.
پاسخ ١:
Create PROCEDURE sp_insert_student
@name nvarchar(٥٠),
@studentId int,
@score int
AS
BEGIN
if (@score <= ٢٠)
begin
insert into TStudent (name, studentId, score)
values (@name,@studentId,@score)
select SCOPE_IDENTITY();
end
else
begin
select ٠;
end
END
: پاسخ ٢
Create procedure sp_delete_student
@id int
AS
BEGIN
DELETE from TStudent where id = @id
END
مبلغ قابل پرداخت 18,000 تومان