السلام عليكم و رحمة الله و بركاته
أولا أحببت أن اوضح اي غموض في السؤال و لكني اريد معرفة هل الحل الذي قمت به صحيح أم معرض لخطأ معين
عندي جدولين
Orders
OrderDetails
تمام ؟؟
وبقوم بعملية الادخال عن طريق جملة SQL
موجوده في StoredProcedure
تفاصيلها :
@OrderDate smalldatetime ,@RequierdDate smalldatetime,@CustomerTypeID int,
@PaymentTypeID int,
@OTSig smallint,@SMSig smallint,@ODSig smallint,@GMSig smallint,@TotalPrice decimal ,@StoreSig smallint
as
insert into Orders(CustomerID,SupplierID,OrderDate,RequierdDate,CustomerTypeID,PaymentTypeId,OT
Sig,SMSig,ODSig,GMSig,TotalPrice,StoreSig)
values (@customerId,@SupplierId,@OrderDate,@RequierdDate,@CustomerTypeID,@PaymentTyp
eID,@OTSig,@SMSig,@ODSig,@GMSig,@TotalPrice,@StoreSig)
</div>
ALTER procedure [dbo].[InsertOrder] @customerId int ,@SupplierId int ,
تمام ؟؟
بس المشكلة في ال OrderDetails
لما بضيف بيانات منتج طبعا لازم آخد رقم ال OrderID
فا قبل ما بضيف في ال Order Details
بعمل Select Max(OrderID) From Orders
و باخد الرقم بتاع الاوردر و ابدأ اضيف في ال Order Details
بس المشكلة الي متوقعها و مش عارف صح ولا لا ؟؟
افرض ان في دلوقتي اكتر من موظف بيعمل اوردر في نفس الوقت فا ممكن الاول ياخد الماكس بتاع التاني و التاني ياخد الماكس بتاع الاول
و بالتالي المنتجات الي في الاوردرات ممكن تتلخبط مع بعضها
فا مش عارف هل جملة الماكس دي صح ولا في طريقة أأمن من كده ؟؟؟