PDA

View Full Version : حرفه ای: مشکل در فراخوانی مقادیر از پروسیجر



hessam2003
یک شنبه 14 اردیبهشت 1393, 12:03 عصر
سلام.
من یک پروسجور دارم که 1 ورودی میگیره و بر اساس اون ورودی بایستی 3تا خروجی برگردونه.
که 3تا متغییر output تعریف کردم.
پروسجورم در فسمت SQL درست جواب میده اما داخل visual studio که میخوام فراخوانیش کنم به مشکل میخوره!!!
کسی میتونه کمک کنه؟؟؟
کد پروسجور:

ALTER procedure [dbo].[Academy_reminder_select] @Reminder_id char(10),
@Reminder_session nvarchar(50) output,
@Reminder_ingredients nvarchar(200) output,
@Err nvarchar(200) output
AS
set @Reminder_session=(select Reminder_session from Academy_reminder where Reminder_id=@Reminder_id)
set @Reminder_ingredients=(select Reminder_ingredients from Academy_reminder where Reminder_id=@Reminder_id)
if not exists (select Reminder_id from Academy_reminder where Reminder_id=@Reminder_id)
set @Err='موردی یافت نشد'

Mahmoud.Afrad
یک شنبه 14 اردیبهشت 1393, 16:15 عصر
کد سی شارپ رو هم بزار

البته میتونی متغیرها رو output تعریف نکنی و در انتها هر سه متغیر رو سلکت کنی. در سی شارپ هم میتونی در قالب یک دیتاتیبل ازش استفاده کنی.

MILAD1992
یک شنبه 14 اردیبهشت 1393, 16:25 عصر
سلام.
من یک پروسجور دارم که 1 ورودی میگیره و بر اساس اون ورودی بایستی 3تا خروجی برگردونه.
که 3تا متغییر output تعریف کردم.
پروسجورم در فسمت SQL درست جواب میده اما داخل visual studio که میخوام فراخوانیش کنم به مشکل میخوره!!!
کسی میتونه کمک کنه؟؟؟
کد پروسجور:

ALTER procedure [dbo].[Academy_reminder_select] @Reminder_id char(10),
@Reminder_session nvarchar(50) output,
@Reminder_ingredients nvarchar(200) output,
@Err nvarchar(200) output
AS
set @Reminder_session=(select Reminder_session from Academy_reminder where Reminder_id=@Reminder_id)
set @Reminder_ingredients=(select Reminder_ingredients from Academy_reminder where Reminder_id=@Reminder_id)
if not exists (select Reminder_id from Academy_reminder where Reminder_id=@Reminder_id)
set @Err='موردی یافت نشد'





اگه تو خود SQL جواب میگیری، پس پروسجورت درسته . . . احتمالاً نحوه فراخوانی اشتباهه . . . این پروسجوری که من می بینم باید از نوع Single Value فراخوانی بشه . . . یعنی شما تو دیتاست رو جدول کلیک راست می کنی ، همون اول گزینه سوم using stored procedure رو انتخاب کردی، سه نوع فراخوانی داری که باید دومی Single Value رو انتخاب کنی . . .