تمرین کوئری نویسی کسر موجودی انبار

دسته بندی : /


تعداد فروش

0 دانشجو

امتیاز

5.00 از 5

پرسش و پاسخ ها

3 کاربر

تاریخ انتشار

01 خرداد 1401

محتوا شامل

سورس کد, ویدیو آموزشی

سطح تمرین

متوسط

سیستم عامل

ویندوز

نیازمندی ها

sql server managment

مدت زمان

9 دقیقه

حجم فایل

30 مگابایت

در این پست قصد داریم تمرین کوئری نویسی کسر موجودی انبار در اسکیوال سرور را بررسی و پیاده سازی نماییم.

تمرین کوئری نویسی کسر موجودی انبار

سوال : Triggerبنویسید که به ازای هر فروش ،  تعداد فروش انجام شده را از موجودی انبار کسر نماید .

مثال: فرض کنید ما 100 کالا از یک نوع در انبار موجود داریم و به مشتری 5 کالا از همون نوع  را میفروشیم انتظار داریم در بخش موجودی 95 کالا در انبار باقی مانده باشد .

نکته : هنگام درج رکورد در جدول فروش انتظار انجام این عملیات را داریم . 

مشاهده ویدیو :

موجودی انبار چیست؟

مدیریت موجودی انبار یکی از مهم‌ترین عوامل در موفقیت یک فروشگاه و مدیریت زنجیره تأمین است.

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

در این مقاله، به توضیح موجودی انبار، جدول کالاها و تریگر برای کسر موجودی از انبار با درج یک کالا پرداخته می‌شود.

موجودی انبار به تعداد کالاهایی اشاره دارد که در انبار موجود هستند و در دسترس قرار دارند.

موجودی انبار می‌تواند بر اساس تعداد کالاها یا مقدار پولی که برای آن‌ها پرداخت شده باشد، محاسبه شود.

در هر صورت، مدیریت موجودی انبار بسیار حائز اهمیت است و باعث بهبود عملکرد فروشگاه و کاهش هزینه‌ها می‌شود.

یکی از موضوعات مرتبط با کسر موجودی انبار طراحی جدول سبد خرید هست چون تمامی این موارد با سناریو فروشگاه مرتبط میباشند.

جدول کالا در دیتابیس

جدول کالاها، جدولی است که شامل اطلاعات کالاهای موجود در فروشگاه است.

این جدول شامل فیلدهایی مانند نام کالا، قیمت، شناسه کالا و … می‌باشد.

با استفاده از این جدول، می‌توان موجودی انبار را مدیریت کرد و کالاهای مورد نیاز را خریداری کرد.

با توجه به توضیحاتی که در قسمت‌های قبلی ارائه شد، می‌توانیم جداول Sales و Product و Inventory را به شکل زیر طراحی کنیم:

جدول Product:

این جدول شامل اطلاعات کالاهای موجود در فروشگاه است.

جدول محصولات در پایگاه داده

جدول Inventory:

این جدول شامل موجودی کالاهای موجود در انبار است.

جدول موجودی انبار در پایگاه داده

جدول Sales:

این جدول شامل جزئیات فروش کالاها است.

جدول فروش و انبارگردانی کالاها

توضیحات:

جدول Product، product_code به عنوان کلید اصلی جدول تعریف میشود.
در جدول Inventory، product_code به ترتیب به  عنوان کلید اصلی  و به عنوان کلید خارجی در جدول Sales استفاده می‌شود.
جدول Sales، sale_id به عنوان کلید اصلی جدول  و product_code به عنوان کلید خارجی در جدول Inventory استفاده می‌شود.
توجه کنید که قیمت کالا در جدول Product و جدول Sales ممکن است متفاوت باشد، به همین دلیل در جدول Sales قیمت کالای فروخته شده نیز ذخیره شده است.

همچنین میتوانید نمودار er فروشگاه را نیز مشاهده نمایید.

تریگر چیست؟

تریگر در SQL یک برنامه است که به‌صورت خودکار اجرا می‌شود و برای پردازش داده‌هایی که به دیتابیس اضافه شده‌اند، استفاده می‌شود.

تریگرها معمولاً برای ایجاد یا به‌روزرسانی داده‌ها و یا برای اجرای عملیات‌های خاصی مانند کسر موجودی از انبار با درج یک کالا، استفاده می‌شوند.

حال با توجه به این توضیحات، می‌توانیم یک تریگر برای کسر موجودی از انبار با درج یک کالا بنویسیم.

در این تریگر، با هر بار درج یک ردیف جدید در جدول فروش، موجودی انبار کسر می‌شود.

در این تریگر، با استفاده از دستور CREATE TRIGGER، یک تریگر با نام reduce_inventory ایجاد می‌شود.

این تریگر برای رویداد INSERT روی جدول Sales تعریف میشود.

به این معنی که هر بار که در جدول Sales یک ردیف جدید اضافه شود، تریگر اجرا خواهد شد.

همچنین با استفاده از FOR EACH ROW، بیان می‌شود که تریگر برای هر ردیف جدیدی که به جدول Sales اضافه می‌شود، باید اجرا شود.

در بخش BEGIN تریگر، با استفاده از دستور UPDATE، فیلد quantity در جدول Inventory که موجودی فعلی کالای مورد نظر را نشان می‌دهد، به تعداد تعداد کالایی که در ردیف جدید جدول Sales  است، کاهش می‌یابد.

در اینجا NEW به معنی ردیف جدیدی است که به جدول Sales اضافه میشود.

همچنین با استفاده از شرط WHERE، فقط ردیف‌هایی که کد کالای آن‌ها برابر با کد کالای ردیف جدید در جدول Sales است، به‌روزرسانی می‌شوند.

کلام آخر

با استفاده از این تریگر، هر بار که در جدول Sales یک ردیف جدید درج شود، موجودی انبار کالای مورد نظر به تعداد کالایی که در ردیف جدید است، کاهش می‌یابد.

این کار باعث به‌روزرسانی موجودی انبار و کاهش هزینه‌های نگهداری موجودی می‌شود.

همچنین با استفاده از تریگر، این عملیات به‌صورت خودکار اجرا می‌شود و نیازی به اجرای دستورات UPDATE جداگانه برای کسر موجودی از انبار وجود ندارد.

در ادامه تمرین های با جواب پایگاه داده را مشاهده نمایید.

3 دیدگاه برای تمرین کوئری نویسی کسر موجودی انبار

  1. Armani

    خیلی خوب بود ممنون از شما

  2. الهام

    ممنون

  3. reza

    عالی بود اموزش

    • وفایی مقدم

      سپاس
      از بخش تمرین SQL میتونید بقیه تمرین هارو هم مشاهده کنید.
      ارادتمند

دیدگاه خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

تمرینات مشابه

پروژه مدیریت کتابها در سی شارپ

پروژه مدیریت کتابها در سی شارپ

  • استادیار: وفایی مقدم
  • قیمت: 50,000 تومان
  • نوع آموزش: ویدیویی
  • سطح تمرین : متوسط
پروژه sql دیجی کالا

پروژه sql دیجی کالا

  • استادیار: وفایی مقدم
  • قیمت: 50,000 تومان
  • نوع آموزش: ویدیویی
  • سطح تمرین : متوسط
پروژه نمایش دمای هوا از طریق گوگل

پروژه نمایش دمای هوا از طریق گوگل

  • استادیار: وفایی مقدم
  • قیمت: 50,000 تومان
  • نوع آموزش: ویدیویی
  • سطح تمرین : متوسط
پروژه ساختمان داده بانک یاب

پروژه ساختمان داده بانک یاب

  • استادیار: وفایی مقدم
  • قیمت: 60,000 تومان
  • نوع آموزش: ویدیویی
  • سطح تمرین : سخت
تمرین چند ضلعی در سی شارپ

تمرین چند ضلعی در سی شارپ

  • استادیار: وفایی مقدم
  • قیمت: رایگان
  • نوع آموزش: ویدیویی
  • سطح تمرین : متوسط
تمرین singleton در سی شارپ

تمرین singleton در سی شارپ

  • استادیار: وفایی مقدم
  • قیمت: رایگان
  • نوع آموزش: ویدیویی
  • سطح تمرین : متوسط
محاسبه شیب پاره خط در سی شارپ

محاسبه شیب پاره خط در سی شارپ

  • استادیار: وفایی مقدم
  • قیمت: 35,000 تومان
  • نوع آموزش: ویدیویی
  • سطح تمرین : متوسط
پروژه محاسبه عملگر های بیتی در سی شارپ

پروژه محاسبه عملگر های بیتی در سی شارپ

  • استادیار: وفایی مقدم
  • قیمت: 50,000 تومان
  • نوع آموزش: ویدیویی
  • سطح تمرین : متوسط