+2 امتیاز
قبل در برنامه نویسی توسط (505 امتیاز)
برچسب گذاری دوباره قبل توسط
آیا در stored-procedure در sql server می توان یک مقدار را در یک متغیر به برنامه پاس داد؟

1 پاسخ

+1 امتیاز
قبل توسط (505 امتیاز)
 
بهترین پاسخ

روشی که من پیدا کردم:

فرض کنید یه storeProcedure  در sql داریم:

Create Procedure InsertProperties
    @zoneID int,
	@ptID int,
	@POwnerName nvarchar(100) = NULL,
As
Begin
Insert Into Properties
([zoneID],[ptID],[POwnerName])
Values
		(@zoneID,@ptID,@POwnerName)
Declare @ReferenceID int
SET @ReferenceID = @@IDENTITY
Return @ReferenceID
END

در قسمت c#:

...
.........
 cmd.Parameters.Add("@zoneID", SqlDbType.Int).Value = agricultures.ZoneID;
            cmd.Parameters.Add("@ptID", SqlDbType.Int).Value = agricultures.propertyTypeID;
            cmd.Parameters.Add("@POwnerName", SqlDbType.NVarChar, 100).Value = agricultures.OwnerName.Trim();

 cmd.Parameters.Add(new SqlParameter("ReturnValue",
                SqlDbType.Int,
                4, /* Size */
                ParameterDirection.ReturnValue,
                false, /* is nullable */
                0, /* byte precision */
                0, /* byte scale */
                string.Empty,
                DataRowVersion.Default,
                null));

 cnn.Open();
                int result;
                this.ExecuteNonQuery(cmd);
                result = (int)cmd.Parameters["ReturnValue"].Value;
                return (result);

 

سوالات مشابه

0 امتیاز
1 پاسخ 3.6هزار بازدید
0 امتیاز
1 پاسخ 2.1هزار بازدید
+1 امتیاز
1 پاسخ 5.5هزار بازدید
+1 امتیاز
1 پاسخ 1.7هزار بازدید
0 امتیاز
1 پاسخ 317 بازدید
+1 امتیاز
1 پاسخ 386 بازدید
0 امتیاز
0 پاسخ 481 بازدید
0 امتیاز
0 پاسخ 1.2هزار بازدید
0 امتیاز
0 پاسخ 1.3هزار بازدید
0 امتیاز
0 پاسخ 1.6هزار بازدید
...