هیچ دوره ای در سبد خرید شما وجود ندارد
سلام دوستان عزیز! امیدوارم حالتون عالی باشه. من حامد مودی هستم و در این دوره آموزشی با شما همراه هستم تا به صورت کامل و جامع مفاهیم MySQL و پایگاهداده (Database) را به شما آموزش بدم. دوره آموزش mysql یکی از فصلهای جداشده از دوره جامع PHP است. با توجه به نیاز بسیاری از برنامهنویسان در حوزههای مختلف به پایگاه داده، تصمیم گرفتیم این فصل را به صورت مجزا منتشر کنیم تا عزیزانی که تنها به مباحث پایگاه داده نیاز دارند، بتوانند از این آموزش بهره ببرند.
پایگاهداده یا دیتابیس مجموعهای از دادههای سازمان یافته است که صورت منظم ذخیره و نگهداری میشوند. دادههای دیتابیس میتواند از هر نوعی باشد مثلا: متن، عدد، تاریخ، تصویر و … ویژگی مهم دیتابیس این است که مثل یک کتابخانه بزرگ تمام دادهها را طبقهبندی و مرتب میکند که ذخیره سازی داده، گرفتن و گزارشگیری از دادهها را ساده میکند به طوری که در کسری از ثانیه از بین هزاران یا میلیونها داده میتوانیم دادههای مورد نظر خود را جستجو و پیدا کنیم.
در دوره آموزش MySQL چه می آموزیم؟
در این دوره، ابتدا به بررسی مبانی و مفاهیم اولیه دیتابیس میپردازیم. سوالات مهمی مثل: پایگاه داده چیه؟ چه کاری انجام میده؟ چطور کار میکنه؟ و چرا پایگاه دادهها نسبت به ذخیره ساده فایلها اهمیت بیشتری دارند؟ رو پاسخ خواهیم داد. همچنین به ویژگیهای کلیدی پایگاه دادهها میپردازیم.
در ادامه، وارد مباحثی مثل موجودیتها، صفتها، انواع صفتها و روابط بین دادهها میشیم. یاد میگیریم که چطور یک دیاگرام پایگاهداده طراحی کنیم، ساختار جدولها رو مشخص کنیم، روابط بین جدولها (کلید اصلی و کلید خارجی) رو تعریف کنیم.
پس از این بخش، به سراغ دستورات SQL میریم. در این دوره ما از MySQL استفاده میکنیم، اما باید بدونید که SQL در تمامی سیستمهای مدیریت پایگاهداده مشترک هست. تمام زبانهای SQL از این دستورها برای مدیریت دادههاشون استفاده میکنند.
در این بخش دوره آموزش MySQL، دستورات SQL رو برای عملیاتی مثل ذخیرهسازی دادهها، بهروزرسانی اطلاعات، حذف دادهها و همچنین گزارشگیریهای مختلف آموزش میدیم. تمام مفاهیم و مبانیای که در بخش اول یاد گرفتیم، اینجا به صورت عملی با دستورات SQL اجرا میشه.
این دوره مناسب چه کسانی است؟
دوره آموزش MySQL به علت کاربردهای گستردهای که این پایگاه داده در اکثر زبانهای برنامهنویسی دارد، مورد نیاز و استفاده تمامی برنامه نویسان خواهد بود. اما برنامه نویسانی که با برنامههای آنلاین و تحت وب سر و کار دارند، نیاز بیشتری به درک مفاهیم و استفاده از پایگاهداده MySQL خواهند داشت. پس این دوره مناسب افرادی با ویژگی های زیر میباشد :
- برنامه نویسان بک اند سایت که با زبان PHP کار میکنند
- برنامه نویسان پایتون که برنامه های تحت وب مینویسند
- افراد علاقه مند به یادگیری پایگاه دادههای تحت وب
- برنامه نویسان سی شارپ که قصد استفاده از MySQL دارند
- علاقه مندان یادگیری پایگاه دادههای رابطه ای
- برنامه نویسان و توسعه دهندگان سایت
- افرادی که قصد ذخیره سازی انبوهی از دادهها در وب را دارند
سرفصل های دوره
- مفاهیم پایگاه داده یا دیتابیس
- پایگاه داده یا دیتابیس چیست؟
- پایگاه داده رابطه ای و غیر رابطه ای
- سیستم مدیریت پایگاه داده یا DBMS
- مدلسازی ساده در دیتابیس
- بهبود ساختار جدول
- انواع ارتباط بین جداول
- کلید اصلی و کلید خارجی
- انواع صفات برای موجودیت ها
- ابزار طراحی دیاگرام دیتابیس و مدلسازی پروژه لیست وظایف(ToDo List)
- آموزش MySQL و ثبت، ویرایش و حذف داده
- کمی درباره زبان SQL
- نصب لاراگن به عنوان سرور مجازی(دارای MySQL)
- اجرای دستور SQL از طریق خط فرمان MySQL
- معرفی و نصب phpMyAdmin
- ورود خودکار به phpMyAdmin بدون نیاز به نام کاربری و پسورد
- ایجاد جداول پایگاه داده از طریق phpMyAdmin
- ویرایش ساختار جدول از طریق phpMyAdmin
- انواع داده در MySQL
- ایجاد جدول با دستورات SQL
- محدودیت های جدول و ستون ها
- ثبت داده با استفاده از phpMyAdmin
- محدودیت کلید خارجی یا FOREIGN KEY با دستور SQL
- محدودیت داده ستون با CHECK
- ویرایش ساختار جداول با دستورات SQL
- ویرایش محدودیت های جداول با دستورات SQL
- ثبت داده در جدول با دستور SQL
- عملیات Import/Export جداول با phpMyAdmin
- عملیات Import/Export جداول با خط فرمان برای سرعت بیشتر
- استخراج دستورات SQL برای ساخت و ویرایش جدول، ثبت رکورد و … از phpMyAdmin
- وارد کردن دیتابیس آزمایشی فروشگاه در MySQL
- انتخاب داده و گزارشگیری از MySQL
- دستور SELECT برای انتخاب رکوردها
- شرط در انتخاب رکوردها یا دستور SELECT
- اپراتورها در MySQL
- مرتب سازی رکوردها در MySQL با ORDER BY
- محدودسازی در MySQL و انجام صفحه بندی
- انجام محاسبات ریاضی روی ستون ها در MySQL
- توابع توکار MySQL
- گروه بندی دادهها
- شرط پس از گروه بندی با HAVING
- دستور UPDATE یا بروزرسانی دادهها در MySQL
- عملیات حذف رکورد یا حذف کامل دادههای جدول (DELETE/TRUNCATE)
- درباره تراکنش یا Transaction در MySQL
- مفهوم Index کردن ستون یا ستون های شاخص
- انتخاب همزمان از چند جدول بوسیله Join
- بررسی انواع Join ها در MySQL
- استفاده از SubQuery
- جدول مجازی یا Virtual Table
- استفاده از View در MySQL
- 💡 تمرین و چالش: ایجاد View برای فروش محصولات
- 💡 تمرین و چالش: تبدیل برخی گزارش های مدیران به کوئری SQL
- بررسی موردی گزارش دیجی کالا و تطبیق با کوئری ها
چرا دیتابیس در برنامه نویسی اهمیت دارد؟
در دنیای برنامهنویسی میتوان گفت که برنامه بدون ذخیرهسازی داده و دیتابیس عملاً کارایی چندانی ندارد. اگر سایتی فروشگاهی باز میکنید و این همه محصول با ویژگیهای مختلف و قیمتهای گوناگون میبینید، در واقع این سایت از دیتابیس برای ذخیرهسازی و نمایش این دادهها استفاده میکند. یا مثلاً یک سایت رزرو بلیط، سایت آموزشی، سایت موزیک و هر نوع سایت دیگر، همگی از دیتابیسهای خود برای ثبت، سازماندهی و گزارشگیری دادهها بهره میبرند. آموزش MySQL در این میان به شما کمک میکند تا مهارتهای لازم برای مدیریت و استفاده از این دیتابیسها را به دست آورید.
وظایف دیتابیس
همانطور که قبلا گفته شد کار اصلی دیتابیس ذخیرهسازی دادهها به شکل سازمان یافته است. این باعث میشود گزارشگیری از دادهها راحتتر باشد. به طور کلی وظایف دیتابیس عبارتند از:
- ذخیره سازی دادهها: هر برنامهای باید دادههای مرتبط را ذخیره سازی کند. مثلا یک برنامه دفترچه یادداشت، یادداشت های کاربر را در دیتابیس آن نرم افزار ذخیره می کند.
- مدیریت دادهها: در یک دیتابیس، اطلاعات به صورت سازمانیافته ذخیره میشوند، به طوری که ثبت، جستجو، مرتبسازی، بهروزرسانی و حذف دادهها به راحتی و با کارایی بالا قابل انجام است.
- اشتراک گذاری دادهها: دیتابیسها قابلیت اشتراکگذاری دادهها با سایر برنامهها را دارند. به عبارت دیگر، چندین برنامه میتوانند از یک دیتابیس مشترک استفاده کنند. به عنوان مثال، اطلاعات مخاطبین یا پیامکهای ذخیرهشده در تلفن میتوانند توسط نرمافزارهای مختلف مدیریت مخاطبین مورد استفاده قرار گیرند.
- نگهداری داده: دیتابیسها علاوه بر نگهداری ساختاریافته اطلاعات، امکان بکاپگیری و پشتیبانگیری آسان را نیز فراهم میکنند تا امنیت و پایداری دادهها تضمین شود.
سیستم مدیریت پایگاه داده چیست؟
سیستم مدیریت پایگاه داده یا DataBase Management System (DBMS) نرم افزاری است که به عنوان واسط بین دیتابیس و کاربر عمل می کند. کاربر به طور مستقیم به فایلهای دیتابیس دسترسی ندارد اما برای دسترسی به اطلاعات دیتابیس از DBMS برای انجام فرآیندها روی دیتابیس و دادهها استفاده می کند.
یا در تعریف دیگر DBMS نرمافزاری است که تمام امکانات لازم برای مدیریت اطلاعات ذخیرهشده را بهکمک مجموعهای از ابزارها و قسمتهای مربوط بههم فراهم میکند. MySQL یکی از پرکاربردترین DBMSها است که در این دوره با این سیستم مدیریت پایگاه داده کار میکنیم.
معرفی پایگاه داده MySQL
MySQL در حال حاضر یکی از محبوب ترین سیستم های مدیریت پایگاه داده رابطهای می باشد که به صورت متن باز توسط شرکت اوراکل ارائه شده است. MySQL از سرعت، مقیاس پذیری و انعطاف پذیری بیشتر نسبت به پایگاه داده هایی مانند SQL Server برخوردار می باشد و همچنین سازگاری بسیار بالایی با زبان برنامه نویسی PHP دارد.
امکاناتی که MySQL در اختیار ما می گذارد به شرح زیر است:
- می توانیم عملیات های مختلف دیتابیس را بر روی جداول، سطرها و ستون ها پیاده سازی کنیم
- روابط میان جداول را برقرار کنیم
- به صورت خودکار ایندکس گذاری ها را بروز کنیم
- با انجام جستجوهای پیشرفته، اطلاعات ترکیبی خوبی را به دست آوریم
و بسیاری موارد دیگر که در این دوره آموزش MySQL پوشش داده میشود.
مزایای MySQL
MySQL به عنوان یکی از محبوبترین سیستمهای مدیریت پایگاهداده رابطهای مزایای زیادی دارد، از جمله:
- رایگان و منبعباز: MySQL تحت مجوز منبعباز (Open Source) منتشر شده و رایگان است، که آن را به انتخابی مناسب برای پروژههای کوچک و بزرگ تبدیل میکند.
- پایداری و کارایی بالا: MySQL برای مدیریت حجم بالایی از دادهها طراحی شده است و با پایداری و کارایی بسیار خوب خود، در پروژههای با ترافیک بالا مانند وبسایتهای بزرگ استفاده میشود.
- مقیاسپذیری: MySQL توانایی مدیریت پایگاههای داده در هر اندازهای را دارد، از پروژههای کوچک گرفته تا سیستمهای بسیار بزرگ با میلیونها رکورد.
- سازگاری با پلتفرمهای مختلف: MySQL روی سیستمعاملهای متنوعی از جمله ویندوز، لینوکس و macOS اجرا میشود و با اکثر زبانهای برنامهنویسی مانند PHP ، Python ، Java و C++ سازگار است.
- پشتیبانی از تراکنشها: MySQL از تراکنشهای ACID (Atomicity, Consistency, Isolation, Durability) پشتیبانی میکند که امنیت و پایداری دادهها را تضمین میکند.
- جامعه کاربری و مستندات قوی: MySQL به دلیل محبوبیت بالای خود، دارای جامعه کاربری فعال و مستندات گستردهای است که حل مشکلات و یادگیری آن را آسان میکند.
- امنیت بالا: MySQL امکانات امنیتی پیشرفتهای مانند کنترل دسترسی کاربران، رمزنگاری دادهها و پشتیبانی از SSL برای انتقال امن دادهها را فراهم میکند.
- پشتیبانی از replication و clustering: پایگاهداده MySQL قابلیتهای پیشرفتهای مانند replication برای کپی کردن دادهها در چندین سرور و clustering برای ایجاد سیستمهای پایگاهداده توزیعشده و مقاوم در برابر خطا را فراهم میکند.
در صورتی که هر گونه سوال، انتقاد یا پیشنهادی در مورد دوره آموزش MySQL دارید، در بخش دیدگاهها در همین صفحه مطرح نمایید.
برای نوشتن دیدگاه باید وارد بشوید.