PDA

View Full Version : پروسجر ثبت سفارش غذا



angel farahani
پنج شنبه 25 اردیبهشت 1393, 19:27 عصر
سلام دوستان ، لطفا به پروسجر درج سفارش غذای من توجه فرمایید . این پروسجر اونطور که من میخوام عمل نمی کنه ، این پروسجر به ازای انتخاب هر سفارش (هر غذا ) یک رکورد در جدول order و detail order ثبت میکنه ، اما من میخوام یک رکورد در جدول order و به ازای هر انتخاب غذای کاربر ، یک رکورد در جدول order detail ثبت شه .

باید اینطوری مقدار بگیره که نمی گیره :

جدول order
, orderid :88 , userid: 22 , shopid: 42 , date , orderstatus:1 , explain
thisaddress:---,detailid:30 , allcount:2 , allprice:50

جدول detailorder


detailid:30 , foodid:37 ,count ,1 , price: 30
detailid:30 , foodid:38 ,count ,1 , price: 20


ALTER Procedure [dbo].[InsertOrder]@userid int,
@shopid int,
@orderdate date,
@orderstatus tinyint,
@explain varchar(100),
@thisaddress varchar(100),
@allcount int,
@allprice int,
@foodid int,
@count int,
@price int


AS
Declare @detailid int


INSERT INTO [orderdetail]


([foodid],[count],[price])
VALUES
(@foodid,@count,@price)


SET @detailid = SCOPE_IDENTITY()


INSERT INTO [order]
([userid]
,[shopid],[orderdate],[orderstatus],[explain],[thisaddress],[allcount],[allprice],[detailid])
VALUES
(@userid
,@shopid,GETDATE(),1,@explain,@thisaddress,@allcou nt,@allprice,@detailid);


RETURN

argess
شنبه 03 خرداد 1393, 13:09 عصر
من تا حالا برنامه نویسی اینطوری ندیدم. باید یک پروسیجر برای order بنویسی و یک پروسیجر برای orderdetail .
بعد در برنامه مثلا c# ابتدا order را ذخیره کنی و بعد id را بدست بیاری و سپس به ازای تعداد دیتیل هات پروسیجر orderdetail را اجرا کنی.