• 1 رای - 3 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
سوال در مورد نحوه صحیح انجام عملیات خرید
#1
ســلام، خسته نباشین

من یه دیتابیس دارم با سه تا ردیف، Users و Orders و Kala

داخل Users چیزایی مثل name و balance هست،داخل Orders هم خرید هایی که انجام میشه ثبت میشه.داخل Kala هم مشخصات کالا مثل price و postalcost هست . (قیمت و هزینه پستی)

میخواستم یه کوئری اجرا کنم که اگر موجودی کاربر از مجموع price و postalcost بیشتر بود،یک رکورد به Orders اضافه بشه و مشخصات خرید ثبت بشه و همچنین اون مبلغ از balance کاربر کم بشه و در دیتابیس ثبت بشه.

روشی که انجام دادم این بود که یکی یکی بالانس کاربر و قیمت جنس و هزینه پستی رو از دیتابیس کشیدم بیرون و جمع وتفریق ها رو انجام دادم و در نهایت 2 تا کوئری زدم،کار هم میکنه.

ولی احساس می کنم این روش اصلا امنیت نداره،میخواستم بدونم روش اصولی و درستش چطوری هست؟
اینکه جدا جدا قیمت ها از دیتابیس میاد بیرون و چک میشه فکر کنم درست نیست چون مثلا ممکنه زمانی که ما موجودی کاربر رو گرفتیم،همون موقع ممکنه بره یه خرید انجام بده و موجودش کم بیشه و ما همچنان با موجودی قبلیش عملیات این خرید رو پیش ببریم.
فکر کنم باید توی یک کوئری همه این کارا رو انجام داد ولی کوئری و روش درستش رو نمی دونم،بی زحمت دوستانی که تجربه دارند راهنمایی کنند.
  پاسخ
تشکر شده توسط :
#2
کسی نبود؟
  پاسخ
تشکر شده توسط :


پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان