برنامه نویسی

Django ORM – انجمن DEV

جنگو یک لایه Object-Relational Mapping (ORM) ارائه می دهد که به شما امکان می دهد به جای نوشتن پرس و جوهای خام SQL با استفاده از کد پایتون با پایگاه داده خود تعامل داشته باشید. ORM یک API پایتونیک سطح بالا برای انجام عملیات پایگاه داده فراهم می کند. در اینجا برخی از دستورات رایج ORM جنگو و دستورات SQL معادل آنها آورده شده است:

  1. ایجاد اشیا:

    • Django ORM: Model.objects.create(**kwargs)
    • SQL: INSERT INTO table_name (column1, column2, ...) VALUES (value1, value2, ...)
  2. ذخیره اشیاء:

    • Django ORM: object.save()
    • SQL: UPDATE table_name SET column1=value1, column2=value2, ... WHERE condition
  3. اشیاء پرس و جو:

    • Django ORM: Model.objects.all()
    • SQL: SELECT * FROM table_name
  4. فیلتر کردن اشیاء:

    • Django ORM: Model.objects.filter(**kwargs)
    • SQL: SELECT * FROM table_name WHERE condition
  5. سفارش اشیاء:

    • Django ORM: Model.objects.order_by(*fields)
    • SQL: SELECT * FROM table_name ORDER BY column1, column2, ...
  6. به روز رسانی اشیاء:

    • Django ORM: Model.objects.filter(**kwargs).update(**update_kwargs)
    • SQL: UPDATE table_name SET column1=value1, column2=value2, ... WHERE condition
  7. حذف اشیا:

    • Django ORM: object.delete()
    • SQL: DELETE FROM table_name WHERE condition
  8. تجمیع اشیاء:

    • Django ORM: Model.objects.aggregate(agg_func)
    • SQL: SELECT agg_func(column) FROM table_name
  9. پیوستن به اشیاء (مدل های مرتبط):

    • Django ORM: Model.objects.select_related('related_model')
    • SQL: SELECT * FROM table_name INNER JOIN related_table ON table_name.related_column = related_table.id

اینها تنها چند نمونه از نحوه مطابقت دستورات ORM جنگو با دستورات SQL هستند. Django ORM بسیاری از عملیات پیچیده‌تر مانند فیلترینگ پیچیده، گروه‌بندی و تجمیع را مدیریت می‌کند، در حالی که دستور SQL زیرین را انتزاع می‌کند.

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

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

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

دکمه بازگشت به بالا