در حال حاضر کلاسی برای دوره مورد نظر ارائه نشده است در صورت تمایل شماره موبایل خود را ثبت نمایید تا زمان شروع دوره ها برای شما اطلاع رسانی شود
SQL چیست و چه کاربردی دارد؟

sql چیست؟
Microsoft SQL Server یک سیستم مدیریت پایگاه داده رابطهای (RDBMS) است. پایگاه داده رابطهای (RDBMS) پایگاه دادهای است که از فرمت سطر و ستون برای ذخیرهسازی استفاده میکند که از طیف گستردهای از پردازش تراکنشها، هوش تجاری و برنامههای تحلیلی در محیطهای IT شرکتها، پشتیبانی میکند. مایکروسافت SQL Server یکی از سه فناوری پایگاه داده پیشرو در بازار به همراه Oracle Database و IBM's DB2 است.
مانند سایر نرم افزارهای RDBMS، مایکروسافت SQL Server بر روی SQL ساخته شدهاست، یک زبان برنامهنویسی استاندارد که مدیران پایگاه داده (DBA) و دیگر متخصصان فناوری اطلاعات از آن برای مدیریت پایگاه دادهها و پرس و جوی دادههای موجود در آنها استفاده میکنند. SQL Server به Transact-SQL (T-SQL) گره خوردهاست، پیاده سازی SQL مایکروسافت مجموعهای از پسوندهای برنامه نویسی اختصاصی را به زبان استاندارد اضافه میکند.
رایج ترین زبان های نشانه گذاری که توسعهدهندگان صفحات وب باید بدانندhtml,css,javascript,bootstrap هستند.
نحوه عملکرد SQL Server
مانند سایر فناوریهای RDBMS، SQL Server اساساً حول یک ساختار جدول مبتنی بر ردیف ساختهشدهاست که عناصر داده مرتبط را در جداول مختلف به یکدیگر متصل میکند، و از نیاز به ذخیره اضافی دادهها در مکانهای مختلف در یک پایگاه داده اجتناب میکند. مدل رابطهای همچنین یکپارچگی ارجاعی و سایر محدودیتهای یکپارچگی را برای حفظ دقت دادهها فراهم میکند. جزء اصلی Microsoft SQL Server موتور پایگاه داده SQL Server است که ذخیره سازی، پردازش و امنیت دادهها را کنترل میکند. این شامل یک موتور رابطهای است که دستورات و پرس و جوها را پردازش میکند و یک موتور ذخیرهسازی که فایلهای پایگاه داده، جداول، صفحات، فهرستها، بافرهای داده و تراکنشها را مدیریت میکند. رویههای ذخیرهشده، تریگرها، نماها و سایر اشیاء پایگاه داده نیز توسط موتور پایگاه داده ایجاد و اجرا میشوند. موتور پایگاه داده، سیستم عامل SQL Server یا SQLOS عملکردهای سطح پایینتری مانند مدیریت حافظه و I/O، زمانبندی کار و قفل کردن دادهها را برای جلوگیری از بهروزرسانیهای متناقض انجام میدهد. یک لایه رابط شبکه در بالای موتور پایگاه داده قرار دارد و از پروتکل جریان داده جدولی مایکروسافت برای تسهیل تعاملات درخواست و پاسخ با سرورهای پایگاه داده استفاده میکند. و در سطح کاربر، SQL Server DBA و توسعهدهندگان، دستورات T-SQL را برای ساخت و اصلاح ساختارهای پایگاه داده، دستکاری دادهها، پیادهسازی حفاظتهای امنیتی و پشتیبانگیری از پایگاههای داده، استفاده میشود.
تاریخچه SQL
کد اصلی SQL Server در دهه 1980 توسط Sybase Inc. ساخته شد که اکنون متعلق به SAP است. Sybase در ابتدا این نرمافزار را برای اجرا بر روی سیستمهای یونیکس و پلتفرمهای مینی کامپیوتر ساخت. این شرکت، مایکروسافت و Ashton-Tate Corp.، که در آن زمان فروشنده پیشرو پایگاههای داده رایانه شخصی بود، برای تولید اولین نسخه از آنچه که Microsoft SQL Server نامیده شد، که برای سیستم عامل OS/2 طراحی و در سال 1989 منتشر شد، همکاری کردند. Ashton-Tate پس از آن کنار رفت، اما مایکروسافت و Sybase همکاری خود را تا سال 1994 ادامه دادند، زمانی که مایکروسافت تمام توسعه و بازاریابی SQL Server را برای سیستم عاملهای خود به عهده گرفت. سال قبل، با شروع آشکار شدن رابطه Sybase، مایکروسافت پس از اصلاح پایه کد OS/2 16 بیتی برای ایجاد یک پیاده سازی 32 بیتی با ویژگیهای اضافه، نرم افزار را در ویندوز NT تازه منتشر شده نیز در دسترس قرار داده بود و روی کدهای ویندوز در آینده متمرکز شد. در سال 1996، Sybase نسخه خود را Adaptive Server Enterprise تغییر نام داد و نام SQL Server را به مایکروسافت واگذار کرد.
معماری SQL
موتور پایگاه داده
جزء اصلی SQL Server موتور پایگاه داده است. موتور پایگاه داده شامل یک موتور رابطهای است که پرسوجوها را پردازش میکند و یک موتور ذخیرهسازی که فایلهای پایگاه داده، صفحات، فهرستها و غیره را مدیریت میکند. اشیاء پایگاه داده مانند رویههای ذخیرهشده، نماها و تریگرها نیز توسط موتور پایگاه داده ایجاد و اجرا میشوند.
موتور رابطهای
Relational Engine شامل اجزایی است که بهترین راه برای اجرای یک پرس و جو را تعیین میکند. موتور رابطهای به عنوان پردازشگر پرس و جو نیز شناخته میشود. موتور رابطهای بر اساس پرس و جوی ورودی، دادهها را از موتور ذخیرهسازی درخواست میکند و نتایج را پردازش میکند. برخی از وظایف موتور رابطهای شامل پردازش پرس و جو، مدیریت حافظه، مدیریت رشته و وظیفه، مدیریت بافر و پردازش پرس و جو توزیع شدهاست.
موتور ذخیره سازی
موتور ذخیرهسازی، وظیفه ذخیرهسازی و بازیابی اطلاعات از سیستمهای ذخیرهسازی مانند دیسک و SAN را بر عهده دارد.

SQL و NoSQL
وقتی نوبت به انتخاب یک پایگاه داده می رسد، بزرگترین تصمیمها انتخاب ساختار داده رابطه ای (SQL) یا غیر رابطهای (NoSQL) است. در حالی که هر دو پایگاه داده گزینه های قابل اجرا هستند، هنوز تفاوت های کلیدی خاصی بین این دو وجود دارد که کاربران باید هنگام تصمیم گیری در نظر داشته باشند.

تفاوت های اصلی:
نوع
پایگاه داده های SQL در درجه اول به عنوان پایگاه های داده رابطه ای (RDBMS) نامیده می شوند. در حالی که پایگاه داده NoSQL در درجه اول به عنوان پایگاه داده غیر رابطه ای یا توزیع شده نامیده می شود.
زبان
پایگاه داده های SQL زبان پرس و جوی ساختاریافته مبتنی بر داده (SQL) را تعریف و دستکاری می کند. دیدن این زبان از یک طرف بسیار قدرتمند است. SQL یکی از چندمنظوره ترین و پرکاربردترین گزینه های موجود است که آن را به انتخاب ایمن به ویژه برای پرس و جوهای پیچیده بزرگ تبدیل می کند. اما از طرف دیگر می تواند محدود کننده باشد. SQL شما را ملزم به استفاده از طرحواره های از پیش تعریف شده برای تعیین ساختار داده های خود قبل از کار با آن می کند. همچنین تمام داده های شما باید از یک ساختار پیروی کنند. این می تواند نیاز به آماده سازی قابل توجهی از قبل داشته باشد که به این معنی است که تغییر در ساختار برای کل سیستم شما هم دشوار و هم مخل خواهد بود.
پایگاه داده NoSQL دارای طرحی پویا برای داده های بدون ساختار است. دادهها به روشهای مختلفی ذخیره میشوند، به این معنی که میتوان آنها را سندمحور، ستونگرا، مبتنی بر نمودار یا بهعنوان ذخیرهسازی KeyValue سازماندهی کرد. این انعطاف به این معنی است که اسناد را می توان بدون داشتن ساختار تعریف شده در ابتدا ایجاد کرد. همچنین هر سند می تواند ساختار منحصر به فرد خود را داشته باشد. نحو از پایگاه داده به پایگاه داده متفاوت است، و شما می توانید فیلدها را در حین حرکت اضافه کنید.
مقیاس پذیری
تقریباً در همه شرایط پایگاه داده های SQL به صورت عمودی مقیاس پذیر هستند. این بدان معناست که می توانید با افزایش مواردی مانند RAM، CPU یا SSD، بار روی یک سرور را افزایش دهید. اما از سوی دیگر پایگاه های داده NoSQL به صورت افقی مقیاس پذیر هستند. این به این معنی است که با اشتراک گذاری یا اضافه کردن سرورهای بیشتر در پایگاه داده NoSQL، ترافیک بیشتری را مدیریت می کنید. این شبیه به افزودن طبقات بیشتر به همان ساختمان در مقابل افزودن ساختمان های بیشتر به محله است. بنابراین NoSQL میتواند در نهایت بزرگتر و قدرتمندتر شود و این پایگاههای داده را به انتخاب ارجح برای مجموعههای داده بزرگ یا همیشه در حال تغییر تبدیل کند.
ساختار
پایگاههای داده SQL مبتنی بر جدول هستند، از سوی دیگر پایگاههای داده NoSQL یا جفتهای کلید-مقدار، مبتنی بر سند، پایگاههای داده گراف یا فروشگاههای ستون گسترده هستند. این باعث میشود پایگاههای داده SQL رابطهای برای برنامههایی که به تراکنشهای چند ردیفی مانند سیستم حسابداری یا سیستمهای قدیمی که برای ساختار رابطهای ساخته شدهاند، گزینه بهتری باشند.
اموال دنبال شده
پایگاههای داده SQL از ویژگیهای ACID (اتمی، سازگاری، جداسازی و دوام) پیروی میکنند در حالی که پایگاهداده NoSQL از قضیه CAP Brewers (ثبات، در دسترس بودن و تحمل پارتیشن) پیروی میکند.
پشتیبانی
پشتیبانی عالی برای همه پایگاه داده SQL از طرف فروشندگان آنها در دسترس است. همچنین بسیاری از مشاورههای مستقل وجود دارد که میتوانند در مورد پایگاه داده SQL برای استقرار در مقیاس بسیار بزرگ به شما کمک کنند، اما برای برخی از پایگاههای داده NoSQL هنوز باید به پشتیبانی جامعه تکیه کنید و فقط کارشناسان خارجی محدودی برای راهاندازی و استقرار NoSQL در مقیاس بزرگ در دسترس هستند. استقرارها برخی از نمونه های پایگاه داده SQL عبارتند از PostgreSQL، MySQL، Oracle و Microsoft SQL Server. نمونه های پایگاه داده NoSQL شامل Redis، RavenDB Cassandra، MongoDB، BigTable، HBase، Neo4j و CouchDB است.

ویژگیهای امنیتی در SQL Server
ویژگیهای امنیتی پیشرفته در همه نسخههای Microsoft SQL Server که با SQL Server 2016 SP1 شروع میشود، پشتیبانی میشود. این ویژگی شامل : "Always Encrypted"، که به کاربر امکان میدهد بدون نیاز به رمزگشایی دادههای رمزگذاری شده ، امنیت سطح ردیف اول را بهروزرسانی کند. دیگر ویژگیهای امنیتی قابل توجه SQL Server شامل رمزگذاری شفاف دادهها میباشد. این ویژگی،فایلهای داده را در پایگاههای داده رمزگذاری کرده، و با حسابرسی دقیق، اطلاعات دقیق در مورد استفاده از پایگاهداده را برای گزارش در مورد رعایت مقررات جمعآوری میکند. مایکروسافت همچنین از پروتکل Transport Layer Security برای ایمن سازی ارتباطات بین کلاینتهای SQL Server و سرورهای پایگاه داده پشتیبانی میکند. اکثر این ابزارها و سایر ویژگیهای مایکروسافت SQL Server در پایگاه داده Azure SQL، یک سرویس پایگاه داده ابری که بر روی موتور پایگاه داده SQL Server ساخته شدهاست، پشتیبانی میشوند. از طرف دیگر، کاربران میتوانند SQL Server را مستقیماً روی Azure از طریق فناوری به نام SQL Server در ماشینهای مجازی Azure اجرا کنند. DBMS را در ماشینهای مجازی ویندوز سرور که روی Azure اجرا میشوند پیکربندی میکند. پیشنهاد VM برای انتقال یا گسترش برنامههای SQL Server داخلی به فضای ابری بهینه شدهاست، در حالی که پایگاه داده Azure SQL برای استفاده در برنامههای کاربردی جدید مبتنی بر ابر طراحی شدهاست. فضای ابری، مایکروسافت همچنین Azure SQL Data Warehouse را ارائه میکند، "یک سرویس ذخیره داده مبتنی بر اجرای پردازش موازی (MPP) SQL Server." نسخه MPP که در اصل یک محصول مستقل به نام SQL Server Parallel Data Warehouse است، که برای استفاده در محل به عنوان بخشی از سیستم پلتفرم Microsoft Analytics که آن را با PolyBase و سایر فناوریهای کلان داده ترکیب میکند، در دسترس است.
بهترین FrameWorkهای سمت -مشتری (client-side) برای پایگاه داده SQL فریمورکهای Vue.js , React.js وAngular.js هستند.
دوره SQL در مهرگان
مجتمع آموزشی مهرگان پیشرو در تدریس زبانهای مختلف برنامهنویسی و صفحات وب، با بهرهگیری از اساتید خبره و روشهای به روز تدریس، دوره SQL در اصفهان را برگزار میکند. در طی برگزاری کلاسها علاوه بر مرور دانشها پایه صفحات وب، شما تحت آموزش تخصصی SQL پروژه محور و به صورت کاربردی قرار میگیرید به صورتی که پس از اتمام کلاس شما کاملا به مباحث و تکنیکهای طراحی و توسعه Back-end (بک-اند) تسلط پیدا کرده و مانند یک برنامه نویسی حرفهای شروع به ایجاد و توسعه صفحات نمایید. در پایان دوره میتوانید نسبت به اخذ مدرک قابل ترجمه یا مدرک فنی حرفهای اقدام نمایید.
مخاطبان دوره