PDA

View Full Version : stored procedureفوری



probit
پنج شنبه 15 تیر 1385, 07:38 صبح
سلام من stored procedure زیر رو نوشتم
CREATE PROCEDURE Search_Soft_Byddl

(
@TypeIDin smallint,
@FileID int output,
@FileName nvarchar(50) output,
@TypeID smallint output,
@Des nvarchar(50) output,
@FileAdd nvarchar(50) output,
@PicAdd nvarchar(50) output
)

AS
SELECT @FileID = FileID, @FileName = FileName, @TypeID = TypeID, @Des = Des, @FileAdd = FileAdd, @PicAdd = PicAdd
FROM Soft_Table
WHERE (TypeID = @TypeIDin)


ولی وقتی اجراش می کنم error می دهد:
Procedure or Function 'Search_Soft_Byddl' expects parameter '@FileID', which was not supplied.
No rows affected.
(0 row(s) returned)
@FileID =
@FileName =
@TypeID =
@Des =
@FileAdd =
@PicAdd =
@RETURN_VALUE =
Finished running [dbo].[Search_Soft_Byddl].

می تونید بگید مشکل کجاست؟

odiseh
پنج شنبه 15 تیر 1385, 07:48 صبح
موقع اجرای این sp اون رو چطور صدا می زنید؟ چون پارامتر از نوع output داره باید علاوه براسم اون تمامی پارامترهای output اون رو هم بهش ارسال کنید....

probit
پنج شنبه 15 تیر 1385, 08:43 صبح
توی asp.net2 پارامترهای output را هم بهش میدم مثل
parmFileID = cmd.Parameters.Add("FileID", SqlDbType.Int)
parmFileID.Direction = ParameterDirection.Output
ولی خروجی ندارد


توی خود sqlserver وقتی اجرا می کنم مقدار TypeIDin رو می دهم و بقیه Default
Running [dbo].[Search_Soft_Byddl] ( @TypeIDin = 1, @FileID = <DEFAULT>, @FileName = <DEFAULT>, @TypeID = <DEFAULT>, @Des = <DEFAULT>, @FileAdd = <DEFAULT>, @PicAdd = <DEFAULT> ).
که خطا می دهد

AminSobati
جمعه 16 تیر 1385, 11:19 صبح
دوست عزیزم،
اونچه که مسلمه این هست که تعداد پارامترهای ارسالیتون مشکل داره. حتی پارامترهای OUTPUT هم باید براشون چیزی ارسال بشه