اصول SQLAlchemy ORM
✅ سرفصل و جزئیات آموزش
آنچه یاد خواهید گرفت:
- راهاندازی محیط توسعه، شامل Python ،VSCode و محیطهای مجازی برای SQLAlchemy
- یادگیری تعریف جداول پایگاه داده به عنوان مدلهای SQLAlchemy ORM همراه با روابط، محدودیتها و شنوندگان رویداد
- ایجاد و مدیریت جداول پایگاه داده با استفاده از SQLAlchemy ORM و PostgreSQL
- انجام عملیات درج، بروزرسانی، حذف دادهها و مدیریت تراکنشها با SQLAlchemy ORM.
- بازیابی و دستکاری کارآمد رکوردهای پایگاه داده با استفاده از ابزارهای کمکی کوئری SQLAlchemy
- اعمال تکنیکهای فیلترینگ برای پالایش کوئریهای پایگاه داده با SQLAlchemy ORM
- استفاده از انواع مختلف SQL joins برای ترکیب دادهها از چندین جدول
- انجام تجمیع، گروهبندی و فیلتر کردن دادهها برای تحلیل رکوردهای پایگاه داده
پیشنیازهای دوره
- تجربه برنامهنویسی لازم نیست، همه چیز در دوره ارائه خواهد شد.
توضیحات دوره
به قدرت SQLAlchemy ORM با این دوره عمیق که برای آموزش اصول تعامل با پایگاه داده با استفاده از Python طراحی شده است، مسلط شوید. چه یک توسعهدهنده، متخصص داده یا مهندس بکاند مشتاق باشید، این دوره شما را به مهارتهای لازم برای تعریف، کوئری و مدیریت کارآمد پایگاههای داده مجهز میکند.
با شروع از راهاندازی محیط توسعه، یاد خواهید گرفت که چگونه مدلهای پایگاه داده را تعریف کنید، روابط ایجاد کنید و محدودیتها را با استفاده از ORM اظهاری SQLAlchemy اعمال نمایید. سپس به ایجاد جداول، درج و بروزرسانی رکوردها، و اجرای کوئریهای پیچیده با فیلترینگ، join ها و تجمیع خواهید پرداخت.
در پایان این دوره، شما قادر خواهید بود SQLAlchemy ORM را در پروژههای دنیای واقعی ادغام کنید، بازیابی دادهها را بهینه نمایید و از قدرت کامل Python برای مدیریت پایگاه داده بهره ببرید.
این دوره برای توسعهدهندگان Python، مهندسان بکاند، تحلیلگران داده و هر کسی که به دنبال کسب تخصص در عملیات پایگاه داده مبتنی بر ORM است، ایدهآل میباشد.
نتایج یادگیری
در پایان این دوره، فراگیران قادر خواهند بود:
مقدمه
- درک پوشش دوره، اهداف و مقاصد آن
- توضیح هدف SQLAlchemy ORM و مزایای آن در مدیریت پایگاه داده
آمادهسازی برای توسعه
- راهاندازی یک محیط توسعه برای SQLAlchemy هم در ویندوز و هم در macOS
- نصب Python و پیکربندی آن برای توسعه با SQLAlchemy
- راهاندازی VSCode برای توسعه SQLAlchemy در ویندوز و macOS
- ایجاد و مدیریت محیطهای مجازی برای مدیریت وابستگیها
اصول - تعریف جداول پایگاه داده (مدلها)
- درک ساختار پایگاه داده از طریق یک نمودار ERD.
- ایجاد یک پروژه جدید SQLAlchemy با یک base اظهاری
- تعریف جداول پایگاه داده با استفاده از مدلهای SQLAlchemy ORM
- شناسایی و اعمال انواع مختلف فیلدها، از جمله فیلدهای DateTime
- پیادهسازی مقادیر الزامی، nullable و پیشفرض در ستونهای جدول
- اعمال محدودیتهای یکتایی و تعریف کلیدهای اصلی و خارجی برقراری روابط خودارجاع در جداول
- پیادهسازی رفتارهای on-delete برای محدودیتهای کلید خارجی.
- تعریف و مدیریت روابط چندبهچند و یکبهیک
- معرفی محدودیتهای سطح پایگاه داده و شنوندگان رویداد
- استفاده از شنوندگان رویداد سطح پایگاه داده (triggers) برای اتوماسیون.
- تبدیل مدلها به Python type hinting برای بهبود خوانایی و قابلیت نگهداری
اصول - ایجاد جداول از مدلها
- راهاندازی PostgreSQL با استفاده از Docker.
- ایجاد یک engine پایگاه داده با استفاده از SQLAlchemy
- برقراری و مدیریت session های ORM برای تعامل با پایگاه داده.
- ایجاد جداول از مدلهای ORM
- حذف و ایجاد مجدد جداول در صورت نیاز
اصول - درج، بروزرسانی و حذف دادهها
- درج رکوردها با استفاده از ()add و ()commit
- انجام درج دستهجمعی با استفاده از ()add_all و ()bulk_save_objects و ()bulk_insert_mappings
- بروزرسانی رکوردهای موجود با SQLAlchemy ORM
- ردیابی تغییرات در آبجکت های مدیریتشده توسط ORM
- درج رکورد در جداول دارای کلید خارجی و روابط
- استفاده از ()flush برای مدیریت مؤثر تراکنشها
- پیادهسازی حذف رکورد، شامل مدیریت روابط
- ایمنسازی فیلدهای حساس از طریق تکنیکهای رمزنگاری
- تنظیم و مدیریت مقادیر پیشفرض سمت سرور
- استفاده از PostgreSQL و DataGrip برای درج و بروزرسانی کارآمد دادهها
- اصول - کوئری از پایگاه داده
- پر کردن پایگاه داده با دادههای اولیه
- بازیابی رکوردها با استفاده از SELECT
- فیلتر کردن رکوردها با استفاده از شروط WHERE
- بررسی SQL خام تولید شده توسط SQLAlchemy ORM
- استفاده از ابزارهای کمکی رایج کوئری
- ()first() ،count() ،limit() ،exists و ()order_by
- پیادهسازی classmethod@ برای تعریف منطق کوئری قابل استفاده مجدد در مدلها
اصول - فیلترینگ
- اعمال متد فیلترینگ ()where
- ترکیب فیلترها با استفاده از منطق AND و OR
- استفاده از عملگرهای مقایسهای پایه برای کوئریها
- پیادهسازی توابع فیلترینگ مانند ()like() ،in_ و ()between
- بازیابی رکوردهای متمایز با استفاده از ()distinct
- ساخت کوئریهای ترکیبپذیر برای بهینهسازی بهتر کوئری.
اصول - Join ها
- انجام inner joins برای:
- روابط کلید خارجی
- روابط یکبهیک
- روابط چندبهچند
انجام left joins برای:
- روابط کلید خارجی
- روابط یکبهیک
- روابط چندبهچند
- اجرای full outer joins و مستثنی کردن نتایج خاص
اصول - تجمیع و گروهبندی
- انجام محاسبات تجمیعی با استفاده از:
- ()count() ،sum() ،avg() ،min و ()max
- گروهبندی نتایج با استفاده از ()group_by
- فیلتر کردن نتایج گروهبندیشده با استفاده از ()having
این دوره برای چه کسانی مناسب است؟
- توسعهدهندگان پایتون سطح مبتدی تا متوسط – کسانی که به دنبال ادغام پایگاههای داده در اپلیکیشنهای خود با استفاده از SQLAlchemy ORM هستند.
- تحلیلگران و مهندسان داده – متخصصانی که نیاز به تعامل برنامهنویسی با پایگاههای داده SQL دارند.
- توسعهدهندگان وب – بهویژه کسانی که با Flask یا FastAPI کار میکنند و به یک ORM برای عملیات پایگاه داده نیاز دارند.
- مهندسان نرمافزار – هر کسی که اپلیکیشنهایی با نیاز به کوئری و مدیریت کارآمد پایگاه داده میسازد.
- دانشجویان و فراگیران علوم کامپیوتر – افرادی که در حال یادگیری در مورد پایگاههای داده رابطهای و مفاهیم ORM هستند.
- علاقهمندان به فناوری – هر کسی که در مورد SQLAlchemy و عملیات پایگاه داده مبتنی بر ORM کنجکاو است.
اصول SQLAlchemy ORM
-
بررسی دوره 02:13
-
SQLAlchemy 04:52
-
مرور اجمالی ماژول 02:14
-
ویندوز: نصب Python 05:20
-
macOS: نصب Python 02:25
-
راهنمای شروع سریع: VS Code برای ویندوز 12:40
-
راهنمای شروع سریع: VS Code برای macOS 12:20
-
راهنمای شروع سریع: ایجاد محیطهای مجازی در ویندوز 08:00
-
راهنمای شروع سریع: ایجاد محیطهای مجازی در macOS 05:25
-
مرور اجمالی ماژول 02:13
-
نمودار ERD پایگاه داده 08:17
-
شروع یک پروژه جدید SQLAlchemy 05:49
-
Base اظهاری 05:16
-
تعریف جداول پایگاه داده به عنوان مدل 06:43
-
انواع فیلد رایج 15:10
-
فیلدهای تاریخ و زمان 06:16
-
فیلدهای الزامی، Nullable و Blank 03:44
-
مقادیر پیشفرض 03:24
-
مقادیر یکتا 03:33
-
ایجاد کلیدهای اصلی 02:31
-
ایجاد کلیدهای خارجی 11:48
-
روابط خودارجاع 03:57
-
رفتار On-Delete 10:58
-
تعریف روابط چندبهچند 09:45
-
ایجاد رابطه یکبهیک 08:42
-
معرفی محدودیتهای سطح پایگاه داده 15:05
-
معرفی شنوندگان رویداد در SQLAlchemy 07:30
-
معرفی شنوندگان رویداد سطح پایگاه داده (Triggers) 06:31
-
کد منبع 00:05
-
مرور اجمالی ماژول 01:03
-
راهاندازی PostgreSQL با Docker 15:06
-
ایجاد Engine 08:20
-
Session های ORM 12:02
-
ایجاد و حذف جداول در پایگاه داده 14:43
-
کد منبع + راهنمای راهاندازی 05:57
-
مرور اجمالی ماژول 01:40
-
درج با استفاده از ()add و ()commit 11:13
-
درج دستهجمعی با ()add_all 03:17
-
درج دستهجمعی با bulk_insert_mappings 03:11
-
درج دستهجمعی با bulk_save_objects 02:06
-
بهروزرسانی رکوردهای موجود 07:06
-
ردیابی در ORM 03:20
-
درج در جداول دارای کلید خارجی 08:42
-
استفاده از ()flush در SQLAlchemy 17:29
-
درج در جداول یکبهیک 09:14
-
درج در جداول چندبهچند 11:26
-
حذف رکوردها 02:45
-
حذف رکوردها به همراه روابط 12:03
-
مدیریت و رمزنگاری فیلدهای حساس 10:28
-
کد منبع + راهنمای راهاندازی 05:57
-
مرور اجمالی ماژول 02:35
-
Seed کردن پایگاه داده 12:43
-
استفاده از SELECT برای بازیابی رکوردها 08:36
-
انتخاب ستونهای خاص با WHERE 06:15
-
بررسی SQL خام 04:20
-
استفاده از ابزار کمکی رایج ()first 03:58
-
استفاده از ابزار کمکی رایج ()count 07:29
-
استفاده از ابزار کمکی رایج ()limit 04:25
-
استفاده از ابزار کمکی رایج ()exists 05:36
-
استفاده از ابزار کمکی رایج ()order_by 05:15
-
استفاده از classmethod@ در مدل 10:01
-
کد منبع + راهنمای راهاندازی 05:57
-
مرور اجمالی ماژول 02:10
-
متد فیلترینگ عمومی ()where 16:37
-
منطق AND و OR در فیلترینگ 07:02
-
تابع ()like 05:57
-
عملگرهای مقایسهای اولیه 13:17
-
تابع ()between 00:50
-
تابع ()in_ 04:05
-
ابزار کمکی ()distinct 03:49
-
کوئریهای ترکیبپذیر 08:04
-
کد منبع + راهنمای راهاندازی 05:57
-
مرور اجمالی ماژول 00:50
-
Inner Join در روابط کلید خارجی 17:22
-
Inner Join در روابط یکبهیک 11:59
-
Inner Join در روابط چندبهچند 12:35
-
Left Join در روابط کلید خارجی 07:04
-
Left Join در روابط یکبهیک 06:10
-
Left Join در روابط چندبهچند 04:35
-
Full Outer Join 06:55
-
Full Outer Join با مستثنی کردن 03:00
-
کد منبع + راهنمای راهاندازی 05:57
-
مرور اجمالی ماژول 01:03
-
تابع ()Count 10:30
-
تابع ()Sum 09:54
-
تابع ()Average 11:35
-
گروهبندی نتایج با ()group_by 25:03
-
فیلتر کردن نتایج گروهبندیشده با ()having 03:19
-
توابع ()Min و ()Max 04:29
-
کد منبع + راهنمای راهاندازی 05:57
مشخصات آموزش
اصول SQLAlchemy ORM
- تاریخ به روز رسانی: 1404/10/04
- سطح دوره:مقدماتی
- تعداد درس:90
- مدت زمان :10:53:09
- حجم :6.56GB
- زبان:دوبله زبان فارسی
- دوره آموزشی:AI Academy