آموزش SQL Server | مبانی و رایگان

آموزش SQL Server | مبانی و رایگان

نوشته شده توسط: فرید طاهری
۰۹ مهر ۱۳۹۴
زمان مطالعه: 90 دقیقه
۴.۸
(۱۸)

مقدمه

با توجه به پیشرفت سریع فناوری و اینترنت، به دنیایی وارد شده‌ایم که محور اصلی آن اطلاعات است. داده ها و اطلاعات از جمله مهمترین دارایی های هر سازمان و کسب و کاری هستند و برای بهبود کارایی، افزایش کارآمدی و رقابتی بودن، لازم است به شکل صحیحی مدیریت و استفاده شوند. در ادامه مطلب به معرفی و آموزش SQL Server می پردازیم.

امروزه، داده ها در همه جای اطرافمان وجود دارند و تعداد آنها روز به روز در حال افزایش است. با توجه به این حجم بسیار زیاد از داده ها، نیاز به سازماندهی، تحلیل و استفاده صحیح از آنها بیش از پیش محسوس شده است.

در این دنیای پویا، اطلاعات به عنوان ابزاری برای تصمیم گیری استفاده می شوند و به صورت گسترده ای در صنایع مختلف از جمله صنعت فناوری، بهداشت و درمان، بانکداری، بازاریابی و … مورد استفاده قرار می گیرند. به عنوان یک کارشناس پایگاه داده، معتقدم که داشتن داده های کیفی و مفید، نه تنها به سازمان ها و کسب و کارها کمک می کند تصمیمات بهتری گرفته شود، بلکه به توسعه اقتصادی و اجتماعی نیز کمک می کند.

اما به همان اندازه که داده ها و اطلاعات قدرتمند هستند، در دسترس قرار دادن اطلاعات حساس و شخصی نیز خطراتی را در پی دارد. بنابراین، امنیت و حریم خصوصی اطلاعات نیز یکی از چالش های بزرگی است که باید مورد توجه قرار گیرد. تأکید می کنم که مدیریت داده ها و اطلاعات به صورت صحیح و با رعایت قوانین و استانداردهای امنیتی، یکی از وظایف مهم سازمان ها و کسب و کارها است. در حقیقت، به دلیل اینکه داده ها و اطلاعات مهمی را شامل می شوند، باید از رویکردی امنیتی به آنها نگریست و از فناوری هایی مانند رمزنگاری و سیستم های دفاعی قوی استفاده کرد.

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

داده و اطلاعات چیست؟

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

داده، اطلاعاتی است که توسط دستگاه های الکترونیکی، نرم افزارها و سیستم های کامپیوتری به صورت دیجیتالی ذخیره می شود. داده ها می توانند به صورت متنی، عددی، تصویری، ویدیویی و صوتی باشند. برای مثال، آدرس ایمیل، شماره تلفن، تاریخ تولد و موقعیت مکانی همه داده ها هستند.

مفهوم اطلاعات هم به عنوان یک مفهوم مرتبط با داده و پایگاه داده بسیار مهم است. اطلاعات به داده هایی گفته می شود که به صورت سازماندهی شده و منظم در دسترس کاربران قرار گرفته اند و ارزشی برای آنها دارند. اطلاعات می توانند شامل تحلیل ها، گزارش ها، پرونده های کاربری، دستورالعمل ها، رویه ها و دیگر اطلاعات بسیاری باشند که در یک پایگاه داده موجود هستند. به عنوان مثال، اطلاعات مشتری می توانند شامل نام، آدرس، شماره تلفن، تاریخ تولد، سابقه خرید و ترجیحات خریداری باشند.

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

بنابراین، مدیران و صاحبان کسب و کار باید به داده های خود توجه کنند و آنها را به صورت منظم و منظم سازماندهی کنند. برای این منظور، استفاده از پایگاه داده ها و سیستم های مدیریت داده ها می تواند به عنوان یک ابزار قدرتمند برای جمع آوری، ذخیره، سازماندهی و دسترسی به داده ها مفید باشد. در کل، داده، پایگاه داده و اطلاعات به عنوان مفاهیمی بسیار حیاتی در عصر اطلاعاتی امروزی به حساب می آیند. با استفاده از این مفاهیم، کسب و کارها و سازمان ها قادر خواهند بود بهبود عملکرد، افزایش سودآوری و بهبود رقابتی خود را تسهیل کنند.

در دنیای امروز، داده ها برای بسیاری از سازمان ها و کسب و کارها ارزش بسیاری دارند. به همین دلیل، مفهوم داده و پایگاه داده بسیار مهم هستند. در این قسمت به به بررسی مفهوم داده و اطلاعات خواهیم پرداخت.

 

بانک اطلاعاتی (Database) یا پایگاه داده چیست؟

پایگاه داده یا Database به معنای مجموعه ای از داده ها است که برای ذخیره، مدیریت و دسترسی به اطلاعات استفاده می شود. این داده ها می توانند از هر نوعی باشند، مانند اطلاعات مشتریان، محصولات، سفارشات و غیره. دیتابیس ها به صورت گسترده در انواع سیستم های اطلاعاتی از جمله برنامه های حسابداری، سیستم های مدیریت پروژه، سامانه های مدیریت محتوا و سایر نرم افزار های کسب و کار استفاده می شوند.

بانک اطلاعاتی به صورت یک مجموعه از جداول، هر کدام با یک ستون از اطلاعات و یک ردیف از داده ها است. در پایگاه داده، داده ها به صورت منطقی و سازماندهی شده اند تا بتوان به راحتی آن ها را مدیریت کرد و درخواست های مختلف را برای دسترسی به داده ها پردازش کرد.

یکی از مزایای استفاده از بانک اطلاعاتی، مدیریت متمرکز داده هاست. با داشتن یک پایگاه داده، این امکان وجود دارد که داده های مرتبط را به صورت مجموعه ای در یک مکان مشخص ذخیره کرد و با استفاده از نرم افزار های مختلف به آن ها دسترسی پیدا کرد. این مزیت به خصوص برای شرکت هایی که با داده های بزرگ کار می کنند و نیاز به مدیریت داده ها دارند، بسیار حائز اهمیت است.

یک مثال ساده را مدنظر داشته باشید:

تصور کنید شما صاحب یک سوپر مارکت هستید، پس با این حساب شما با کلی جنس و مشتری درگیر هستید. 

لطفا به سوالات زیر پاسخ دهید:

  1. فروش دو هفته اخیر شما چقدر بوده است؟
  2. هر ماه چند مشتری جدید به سوپر مارکت شما اضافه می‌گردد؟
  3. اگر حساب دفتری دارید، بدهکارترین مشتریان شما چه کسانی هستند؟
  4. پرفروش‌ترین کالاهای شما در کدام دسته قرار دارند؟
  5. هر ماه چقدر (ریالی) کالا خرید می‌کنید؟

حتما متوجه شده‌اید که پاسخ به سوالات بالا واقعا کار دشواری است و بدون داشتن داده‌های ثبت شده، شدنی نیست. پس راهکار این است که شما اطلاعات روزانه خودتان را در جایی ثبت کنید. حال این ثبت و ظبط اطلاعات باید دارای یک ساختار مشخص و حرفه‎ای باشد که در اینجا بانک اطلاعاتی به شما کمک خواهد کرد. شاید با خودتان بگویید اکسل می‌کنم و تمام است، با توجه به اینکه اول بحث هستیم پس اجازه بدهید این سوال را جلوتر که پیش رفتیم پاسخ بدهم.

چرا از بانک اطلاعاتی استفاده کنیم؟

بانک اطلاعاتی یا پایگاه داده، به عنوان یک ابزار مدیریت داده ها بسیار حائز اهمیت است و استفاده از آن در بسیاری از صنایع و شرکت ها بسیار رایج است. در زیر به برخی از دلایل استفاده از بانک اطلاعاتی اشاره می کنیم:

بدون شک پاسخ‌های زیادی می‌توان به این سوال داد ولی ۵ دلیل اصلی استفاده از بانک اطلاعاتی عبارتند از:

افزایش بهره وری 

 با استفاده از پایگاه داده، می توان به صورت بهینه با داده ها کار کرد و از قابلیت های مختلف آن برای جستجو، فیلتر کردن، مرتب کردن و ترکیب داده ها استفاده کرد. همچنین، با استفاده از بانک اطلاعاتی، می توان به راحتی اطلاعات را با دیگران به اشتراک گذاشت و همکاری بیشتری را در مدیریت داده ها داشت.

بهبود عملکرد

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

مدیریت بهتر داده ها

پایگاه داده، امکان مدیریت بهتر و برنامه ریزی داده ها را فراهم می کند. با استفاده از بانک اطلاعاتی، می توان داده ها را به صورت منظم و مرتب دسته بندی کرد و به راحتی با آن ها کار کرد.

امنیت داده ها

 با استفاده از بانک اطلاعاتی، می توان به راحتی سطح دسترسی کاربران را مدیریت کرد و از اطلاعات محرمانه و حساس حفاظت کرد. همچنین، با استفاده از بانک اطلاعاتی، می توان به راحتی از بک آپ های مداوم داده ها برای حفظ امنیت آن ها استفاده کرد.

قابلیت های گسترده

پایگاه داده، قابلیت های مختلفی مانند جستجو، فیلتر کردن، مرتب کردن و ترکیب داده ها را دارد. با استفاده از بانک اطلاعاتی، می توان به راحتی به داده های مورد نیاز دسترسی پیدا کرد و از آن ها استفاده کرد.

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

در ادامه چندین اصطلاح فنی را بررسی می کنیم که بصورت رایج در مباحث بانک اطلاعاتی از آنها استفاده می‌شوند.

اصطلاح فنی شماره ۱: جلوگیری از افزونگی داده‌ها

افزونگی داده (Data Expansion) و نرمال سازی (Normalization) از جمله مفاهیمی هستند که در زمینه طراحی و پیاده‌سازی بانک اطلاعاتی (Database) بسیار مهم هستند. با استفاده از نرمال سازی، می‌توانیم اطلاعات را به شکلی منظم و سازمان‌یافته در بانک اطلاعاتی ذخیره کنیم و از تکرار اطلاعات و مشکلاتی مانند مشکلات هماهنگی و اندازه گیری‌های نامناسب جلوگیری کنیم.

همان مثال سوپر مارکت را که قبل‌تر بهش اشاره داشتیم در نظر بگیرید، خاطرتان است که گفتیم خوب چه کاری است من این اطلاعات را داخل اکسل می‌ریزم و بعدش گزارش گیری می‌کنم، ولی یک نکته وجود دارد، شما در اکسل برای مثال به ازای خرید هر مشتری باید اطلاعات آن مشتری را هر بار وارد کنید. هر بار که مشتری به شما مراجعه می‌کند به ازای هر فاکتور باید مشخصات مشتری را در اکسل وارد کنید. خوب این اطلاعات (مشخصات مشتری) مدام در حال تکرار است در صورتی که نباید شما اطلاعات تکراری وارد کنید. راهکار چیست؟ استفاده از سیستم‌های مدیریت پایگاه داده به همراه نرمال‌سازی (عجله نکنید در مورد نرمال‌سازی جلوتر صحبت خواهیم کرد) این مشکل را حل ‌می‌کند.

 

اصطلاح فنی شماره ۲: نرمال‌سازی داده (Normalization)

با افزایش حجم داده‌ها، تلاش برای ذخیره و به دست آوردن اطلاعات به شکلی کارآمد و با کمترین هزینه، مسئله مهمی است. در این شرایط، افزونگی داده می‌تواند یک راه حل مناسب باشد. به این صورت که اطلاعات مشابه در بانک اطلاعاتی ذخیره شوند و به جای آنکه هر بار به صورت جداگانه در بانک اطلاعاتی ذخیره شوند، به یک رکورد واحد ارجاع داده شوند. این روش می‌تواند به دو روش افزایشی و کاهشی انجام شود. در روش افزایشی، ابتدا باید بررسی کنیم که آیا یک رکورد جدید در بانک اطلاعاتی وجود دارد یا خیر؟ اگر وجود داشت، اطلاعات جدید به اطلاعات قبلی اضافه می‌شود. در روش کاهشی، باید بررسی کنیم که آیا هیچ یک از رکوردهای موجود در بانک اطلاعاتی با رکورد فعلی یکسان نیست؟ اگر نیست، یک رکورد جدید ایجاد می‌شود.

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

اصطلاح فنی شماره ۳: قابلیت به اشتراک گذاشتن داده‌ها

بانک اطلاعاتی یکی از اصلی‌ترین و پایه‌ای‌ترین ابزارهای مورد استفاده در برنامه‌نویسی است. یکی از مسائل مهم در این زمینه، به اشتراک گذاشتن داده‌ها در بانک اطلاعاتی است. برای این کار، برنامه‌نویسان باید از روش‌های امن و مطمئن برای به اشتراک گذاشتن داده‌ها استفاده کنند.

من در سوپر مارکت خودمان که حالا بزرگ‌تر هم شده است می‌خواهیم دو صندوق فعال داشته باشم تا حساب و کتاب مشتریان را سریعتر انجام دهم. خوب چیکار کنیم، بریم سراغ اکسل 😀
قاعدتا در ذهن شما این صورت مسئله ایجاد می‌گردد که خوب دوتا کامپیوتر (دو تا صندوق فروشگاهی) باید بتوانند همزمان به داده‌ها دسترسی داشته باشند و همزمان هم بتوانند داده درج کنند. پس برای اینکه بتوانیم از قابلیت به اشترک گذاشتن داده‌ها استفاده کنیم نیازمند استفاده از سیستم‌های مدیریت پایگاه داده هستیم.

 دو روش اصلی برای به اشتراک گذاشتن داده در بانک اطلاعاتی 

 

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

در این روش، برنامه‌نویسان از یک بانک اطلاعاتی متمرکز استفاده می‌کنند که تمام داده‌های مورد نیاز برنامه‌های مختلف در آن ذخیره می‌شود. این روش باعث می‌شود تا برنامه‌های مختلف بتوانند از داده‌های مشترک استفاده کنند و دیتابیس به صورت مرکزی مدیریت شود.

روش دوم، استفاده از دیتابیس‌های توزیعی 

در این روش، برنامه‌نویسان از چندین بانک اطلاعاتی توزیع شده استفاده می‌کنند که هر یک از آن‌ها دارای بخشی از داده‌های کلی است. این روش باعث می‌شود که هر برنامه بتواند از داده‌های محلی خود استفاده کند و بانک اطلاعاتی به صورت توزیع شده مدیریت شود.

در هر دو روش، برنامه‌نویسان باید از روش‌های امن برای اشتراک گذاری داده‌ها استفاده کنند تا از نقض امنیت داده‌ها جلوگیری شود. به عنوان مثال، باید از رمزنگاری برای محافظت از داده‌های حساس استفاده کرد و به دنبال به‌روزرسانی و نگهداری منظم دیتابیس برای جلوگیری از خطاهای سیستمی و افزایش قابلیت اطمینان و کارایی استفاده شود.

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

اصطلاح فنی شماره ۴: پایگاه داده رابطه‌ای و غیر رابطه‌ای

در اینجا نمی‌خواهیم در مورد تاریخچه DBMS یا RDBMS صحبت کنیم در قسمت بعد سراغ سیستم‌های مدیریت پایگاه داده رابطه‌ای خواهیم رفت و در مورد آنها صحبت خواهیم کرد.

سیستم مدیریت پایگاه داده (DBMS) و سیستم مدیریت پایگاه داده رابطه‌ای (RDBMS) هر دو به منظور مدیریت پایگاه‌های داده استفاده می‌شوند، اما دارای تفاوت‌هایی هستند.
DBMS به عنوان یک سیستم مدیریت پایگاه داده محسوب می‌شود که برای ذخیره و مدیریت انواع مختلفی از داده‌ها ایجاد شده است. این سیستم‌ها می‌توانند از فرمت‌های مختلفی از جمله فرمت‌های متنی، عددی و تصویری پشتیبانی کنند. برای مدیریت داده‌ها، DBMS استفاده می‌کند مانند ساختار برای ذخیره، جستجو، حذف و به روز رسانی داده‌ها. معمولاً این سیستم‌ها مبتنی بر فایل‌ها هستند.

از سوی دیگر، RDBMS یک نوع از DBMS است که برای مدیریت پایگاه‌های داده‌های رابطه‌ای طراحی شده است. در RDBMS، داده‌ها در قالب جداول رابطه‌ای با ستون‌های مختلف ذخیره می‌شوند. این سیستم مدیریت پایگاه داده قابلیت‌هایی مانند عملیات پیوند (JOIN)، تضمین اصالت معنایی (Integrity Constraint)، انجام تراکنش‌ها (Transaction Processing) و دسترسی چندکاربره را بهبود می‌بخشد.

پایگاه داده رابطه‌ای یکی از پرکاربردترین و معمول‌ترین نوع بانک اطلاعاتی است که از روی روابط بین جداول و رکوردهای آن‌ها تشکیل می‌شود. RDBMS (پایگاه داده مدیریت رابطه‌ای) نیز نامی است که برای نرم‌افزارهایی که برای مدیریت پایگاه داده رابطه‌ای استفاده می‌شوند به کار می‌رود.

با این حال، پایگاه داده‌های غیر رابطه‌ای نیز وجود دارند. این نوع بانک اطلاعاتی شامل داده‌هایی است که در قالب دیگری غیر از جدول‌ها و روابط ذخیره می‌شوند، مانند مستندات، تصاویر و ویدئوها. به جای اینکه از SQL برای جستجوی داده‌ها استفاده شود، در پایگاه داده‌های غیر رابطه‌ای از دیگر زبان‌ها و ابزارها برای دسترسی به داده‌ها استفاده می‌شود.

اصطلاح فنی شماره ۵: جدول، رکورد و فیلد در دیتابیس

فیلد، به یکی از مؤلفه‌های اطلاعاتی یک رکورد گفته می‌شود که شامل یک مقدار یا یک مجموعه از مقادیر است. به عنوان مثال، در جدول مربوط به مشتریان یک شرکت، فیلدهایی مانند نام، آدرس، تلفن و ایمیل اطلاعات مشتریان را شامل می‌شوند.

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

رکورد به عنوان یک مجموعه‌ی از فیلدها در بانک اطلاعاتی شناخته می‌شود. هر رکورد می‌تواند شامل مقادیر مختلفی از فیلدها باشد که می‌توانند با یکدیگر مرتبط باشند. به عنوان مثال، یک رکورد در جدول مشتریان می‌تواند شامل نام، آدرس و شماره تماس یک مشتری باشد.

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

انواع RDBMSها (پایگاه داده رابطه‌ای چیست؟)

ما در این قسمت نمی‌خواهیم در مورد پایگاه داده‌های گرافی، NoSQL، ستونی و… صحبت می‌کنیم. خیلی شفاف می‌خواهیم انواع پایگاه داده RDBMS را که بسیار هم محبوب هستند را معرفی کنیم و بیشتر SQL Server مورد بررسی قرار دهیم

۱. MS SQL Server:

پایگاه داده محبوب Microsoft SQL Server یکی از برترین پایگاه داده‌ها از نوع RDBMS است. این پایگاه داده در ایران و دنیا بسیار محبوب بوده و دارای بازار کار بسیار گسترده‌ای است.

۲. Oracle:

پایگاه داده اوراکل هم یکی از برترین پایگاه داده‌های مورد استفاده در دنیا می‌باشد. این پایگاه داده نسبت به رقیب اصلی خودش (SQL Server) سختی‌ها و گرانی‌های خاص خودش را دارد ولیکن با این داستان بسیار محبوب است.

۳. MySQL:

قطعا این دیتابیس در دنیای اوپن سورس حرف‌های زیادی برای گفتن دارد. یکی از محبوب‌ترین دیتابیس‌ها که شرکت‌های هاستینگ همیشه آنرا به عنوان گزینه اصلی خودشان قرار می‌دهند (مثلا می‌خواهیم یک سایت وردپرس بالا بیاریم، قطعا انتخاب اول ما برای دیتابیس، MySQL خواهد بود). لازم به ذکر است MySQL یکی از زیرمجموعه‌های شرکت اوراکل است.

۴. PostgreSQL:

قطعا این دیتابیس هم همانند MySQL در دنیای اوپن سورس حرف‌های زیادی برای گفتن دارد. یکی از محبوب‌ترین دیتابیس‌ها که شرکت‌های بزرگ دنیا در حال استفاده از آن هستند. 

۵. DB2:

شرکت IBM هم برای خود در این لیست حرفی برای گفتن دارد و با دیتابیس حرفه‌ای خود به نام DB2 در این لیست خودنمایی می‌کند. توجه کنید که این دیتابیس بسیار گران قیمت می‌باشد.

SQL Server این دیتابیس محبوب و دوست داشتنی!

قبل از سال ۱۳۹۰، زمانی که می‌خواستم نیک آموز را تاسیس کنم در یکسری جلسات تحلیل و طراحی نرم‌افزارها چه به عنوان برنامه‌ نویس چه به عنوان پیمانکار (جهت اجرای پروژه) شرکت می‌کردم. در این جلسات مدیران IT یک دل نه صد دل عاشق اوراکل یا DB2 بودن و همیشه می‌گفتند ما باید دیتابیس خودمان را اوراکل انتخاب کنیم و بانک اطلاعاتی SQL Server را یک بانک بسیار ضعیف می‌دانستند.

به هر حال نیک آموز را تاسیس کردیم و با این پیش فرض نادرست شروع کردیم به اطلاع رسانی (شما بخوانید جنگیدن) کلی ویدئو آموزشی ساختیم، کلی مقاله نوشتیم و کلی وبینار (هنوز وبینار مد نبود) برگزار کردیم تا بازار متوجه شد که ای بابا این SQL Server خیلی حرفه‌ای شده است و باید از آن در پروژه‌های خودشان استفاده کنند. به هر ترتیب در ادامه می‌خواهیم در مورد SQL Server بیشتر باهم صحبت کنیم.

کاربردهای SQL Server

کاربرد SQL Server به عنوان یک سیستم مدیریت پایگاه داده بسیار گسترده است. از طریق SQL Server، شما می‌توانید داده‌های خود را به طور سازمان‌یافته و ایمن درون پایگاه داده‌هایی ذخیره کنید و در هنگام نیاز، به سرعت و با دقت به داده‌های خود دسترسی داشته باشید.

همچنین با استفاده از SQL Server، شما می‌توانید به طور موثر تر با داده‌های خود کار کنید. با استفاده از زبان SQL (Structured Query Language) که در SQL Server استفاده می‌شود، شما می‌توانید به راحتی داده‌های خود را استخراج، تحلیل و تغییر دهید.

همچنین SQL Server به شما امکاناتی مانند تعیین دسترسی‌ها و مجوزهای کاربری، پشتیبان گیری از داده‌های خود، و توسعه برنامه‌های کاربردی که به داده‌های شما نیاز دارند را نیز می‌دهد.

در حجم داده‌های بالا، استفاده از SQL Server به شما امکاناتی را می‌دهد که می‌توانید با آن‌ها به طور موثر با داده‌های خود کار کنید. در ادامه، چند مورد از این امکانات را ذکر می‌کنم:

۱. امکانات مدیریت پایگاه داده‌های بزرگ: SQL Server برای مدیریت پایگاه داده‌های بزرگ طراحی شده است و امکاناتی مانند تقسیم بندی پایگاه داده به بخش‌های کوچکتر، پشتیبان‌گیری از پایگاه داده، توانایی پشتیبانی از پردازش همروند و … را فراهم می‌کند.

۲. بهبود عملکرد: SQL Server به شما ابزارهایی مانند اندیکس‌ها، نمایه‌ها، نحوه برنامه‌ریزی کوئری‌ها و … را فراهم می‌کند که با استفاده از آن‌ها، می‌توانید به طور موثر تر و سریعتر با داده‌های خود کار کنید.

۳. امکانات امنیتی: با استفاده از SQL Server، شما می‌توانید دسترسی کاربران به داده‌های خود را مدیریت کنید و محدودیت‌های دسترسی را برای آن‌ها تعیین کنید.

۴. پشتیبانی از داده‌های گوناگون: SQL Server از پشتیبانی از انواع مختلف داده‌ها مانند متنی، تصویری، صوتی و … پشتیبانی می‌کند.

به طور کلی، SQL Server به شما امکاناتی را می‌دهد که بهترین عملکرد و امنیت برای داده‌های خود را به شما فراهم می‌کند و با استفاده از آن، می‌توانید به طور موثرتر با داده‌های خود کار کنید، حتی در حجم‌های بزرگ.

 

مزایا و معایب SQL Server

SQL Server یکی از پایگاه‌های داده رابطه‌ای محبوب است که توسط شرکت مایکروسافت توسعه داده شده است. با اینکه SQL Server امکانات بسیاری برای مدیریت داده ها و استفاده از آن‌ها به کاربران خود ارائه می‌دهد، اما همچنان برخی مزایا و معایب برای این پایگاه داده وجود دارد. در این قسمت به مزایا و معایب SQL Server می‌پردازیم.

 

مزایا SQL Server:

۱. پشتیبانی از زبان SQL : در واقع SQL Server به خوبی با زبان SQL سازگار است و می‌تواند با هر نرم افزاری که SQL را پشتیبانی می‌کند ارتباط برقرار کند. همچنین SQL Server قابلیت استفاده از زبان های برنامه نویسی مختلف را نیز دارد.

۲. سازگاری با سیستم عامل ویندوز و لینوکس: SQL Server به خوبی با سیستم عامل ویندوز و لینوکس سازگار است . باعث می‌گردد این پایگاه داده محبوب در سیستم عامل Linux هم به خوبی نصب و استفاده گردد.

۳. مدیریت و پردازش موازی داده‌ها: SQL Server قابلیت مدیریت موازی را دارد که به کاربران این امکان را می‌دهد که بتوانند با داده‌های خود به صورت همزمان کار کنند و در نتیجه زمان پاسخ دادن به کاربران را کاهش دهند.

۴. امنیت: SQL Server قابلیت های امنیتی بسیار خوبی را دارد که می‌تواند برای محافظت از داده‌ها استفاده شود. این پایگاه در حال حاضر یکی از امن‌ترین دیتابیس‌های جهان است.

۵. سرعت بسیار بالا: SQL Server با استفاده از تکنولوژی‌های بسیار حرفه‌ای می‌تواند پردازش و تراکنش‌های بانک اطلاعاتی را با سرعت بسیار بالایی انجام دهد.

 

معایب SQL Server:

۱. هزینه: قیمت SQL Server برای کاربرانی که نیاز به پایگاه داده بزرگی دارند، بسیار گران است و می‌تواند برای شرکت‌ها و سازمان‌های کوچک سخت باشد.

 

۲. محدودیت‌هایی در نسخه‌های Express و Standard: نسخه‌های Express و Standard SQL Server محدودیت‌هایی در بخش‌هایی مانند حافظه و تعداد پردازنده‌ها دارند که ممکن است برای پایگاه‌های داده بزرگ که نیاز به پردازش و حافظه بیشتری دارند، مناسب نباشند.

 

۳. نیاز به مدیریت و داشتن تخصص: هرچند SQL Server قابلیت‌های مدیریتی بسیار خوبی دارد، اما نیاز به مدیریت دقیق و صحیح این پایگاه داده و تنظیمات آن برای بهره‌وری بالا و برخورداری از قابلیت‌های کامل آن، امری ضروری است. بنابراین نیاز به توانایی‌های مدیریتی خوب و تجربه برای استفاده از SQL Server بالاست. البته اینکه شما در یک حوزه متخص شوید و بتوانید از توانایی خود برای مدیریت آن حوزه استفاده کنید به خودی خود به نوعی نقطه قوت محسوب می گردد.

معماری SQL Server (کالبدشکافی یا آناتومی SQL Server)

SQL Server یک بانک اطلاعاتی رابطه‌ای (Relational Database Management System یا RDBMS) است. این بانک اطلاعاتی برای ذخیره، مدیریت و بازیابی اطلاعات، از زبان SQL (Structured Query Language) استفاده می‌کند. SQL Server در واقع شامل یک موتور پایگاه داده، که به آن Database Engine گفته می‌شود، و ابزارهای مدیریت داده است. در ادامه به شرح دادن اجزای داخلی SQL Server خواهیم پرداخت:

اجزای داخلی SQL Server

 

داده‌ها و فایل‌های داده

 در SQL Server، داده‌ها در فایل‌های داده (Data File) ذخیره می‌شوند. این فایل‌ها شامل اطلاعات جدول‌ها، نمایه‌ها و دیگر اطلاعات مربوط به بانک اطلاعاتی هستند. SQL Server برای ذخیره داده‌ها از دو نوع فایل استفاده می‌کند: فایل‌های داده (mdf) و فایل‌های لاگ تراکنش (ldf). فایل‌های داده، حاوی اطلاعات جداول، نمایه‌ها، مشاهدات، روابط و سایر اطلاعات دیگر هستند، در حالی که فایل‌های لاگ تراکنش، به‌طور خاص، برای ذخیره عملیات تراکنش‌ها استفاده می‌شوند. در واقع، فایل‌های لاگ تراکنش، عملیاتی را که در جداول اصلی دیتابیس انجام می‌شود را به‌صورت یک زنجیره از عملیات‌های تراکنش‌ها ذخیره می‌کنند. این فایل‌ها به صورت مداوم به‌روزرسانی می‌شوند و می‌توانند به‌دلیل خطاهای سیستمی یا تراکنش‌های ناقص، خراب شوند.

جداول در  SQL Server

 جداول از اجزای اصلی یک بانک اطلاعاتی هستند. در SQL Server، جداول در یک پایگاه داده قرار دارند و اطلاعات را در فضای داده‌ای خود نگه‌داری می‌کنند. هر جدول شامل مجموعه‌ای از ردیف‌ها (Rows) و ستون‌ها (Columns) است. ستون‌ها نوع داده‌های مختلفی مانند عدد صحیح، متن، تاریخ و زمان، بولین و… را پشتیبانی می‌کنند. در این بانک اطلاعاتی، هر جدول باید یک شناسه یکتا (Unique Identifier) داشته باشد تا بتوان به سادگی به آن دسترسی پیدا کرد.

ایندکس‌ها (Index) در SQL Server

نمایه‌ها (Index) در SQL Server برای بهبود عملکرد جستجو و بازیابی داده‌ها استفاده می‌شوند. ایندکس‌ها به صورت مجموعه‌ای از مکانیزم‌ها، اطلاعات جدول را مرتب و جستجو‌پذیر می‌کنند. در واقع، ایندکس‌ها از ستون‌ها، اطلاعات جدول را با توجه به الگوهای مشخص، بازنویسی می‌کنند و به سادگی جستجو و بازیابی داده‌ها کمک می‌کنند.

تراکنش‌ها

 در SQL Server، تراکنش‌ها برای مدیریت تغییرات در داده‌های بانک اطلاعاتی استفاده می‌شوند. تراکنش‌ها اجازه می‌دهند تا تعدادی از عملیات مرتبط با یکدیگر، به صورت یک بسته کامل اجرا شوند. به این ترتیب، در صورت بروز خطا در هر یک از عملیات، تراکنش به طور کامل لغو می‌شود و هیچ تغییری در داده‌ها اعمال نمی‌شود. این امر از ایجاد داده‌های ناهمخوان جلوگیری کرده و پایداری بانک اطلاعاتی را حفظ می کند.

پرس و جو یا کوئری

SQL Server از زبان T-SQL برای ایجاد پرس و جو (کوئری) بر روی داده‌های بانک اطلاعاتی استفاده می‌کند. T-SQL اجازه می‌دهد تا کاربران به داده‌ها دسترسی پیدا کنند، جستجو کنند و اطلاعات را بازیابی کنند. برای انجام Queryهای پیچیده و بازیابی داده‌های بزرگ، استفاده از ایندکس‌ها اجتناب‌ناپذیر است.

امنیت

 امنیت بانک اطلاعاتی یکی از مهمترین مسائلی است که باید در نظر گرفته شود. SQL Server شامل ابزارهای امنیتی قدرتمندی است که می‌تواند برای محافظت از داده‌های بانک اطلاعاتی مورد استفاده قرار گیرد. بدون شک SQL Server یکی از امن ترین دیتابیس‌های دنیا است.

System Database

در SQL Server علاوه بر دیتابیس‌های معمولی که توسط کاربران ایجاد می‌شوند، دیتابیس‌های سیستمی نیز وجود دارند که توسط سیستم SQL Server برای مدیریت و عملکرد خود به کار می‌روند. یکی از دیتابیس‌های سیستمی مهم در SQL Server، دیتابیس master است که در آن اطلاعات مربوط به تمامی دیتابیس‌ها و محدودیت‌های سرور ذخیره می‌شود. دیتابیس model نیز دیتابیسی است که برای ایجاد دیتابیس‌های جدید به کار می‌رود و دیتابیس msdb اطلاعات مربوط به تعمیر و نگهداری از ابزارهای مختلف SQL Server را در بر می‌گیرد و دیگری tempDB است که به عنوان چرک نویس SQL Server عمل می کند.

User Database

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

تاریخچه SQL Server (نسخه‌های SQL Server)

شرکت مایکروسافت از سال ۱۹۸۹ تا هم اکنون که با شما صحبت می‌کنیم، نسخه‌های زیادی را به بازار عرضه کرده است ولی در سایت خودش هم نسخه‌ SQL Server را از SQL Server 6.5 به بعد لیست کرده است. واقعیت من و مسعود طاهری هم با نسخه SQL Server 6.5 , SQL Server 7.0 کار کرده‌ایم (البته خیلی کم چون واقعا منابع آموزشی بسیار محدود و کم بود).

آموزش نصب نرم افزار SQL Server

برای اینکه بتوانید SQL Server را روی سیستم خود راه‌اندازی کنید باید ابتدا سرویس ۲۰۲۲ SQL Server را نصب کنید سپس SQL Server Management Studio را نصب کرده تا بتوانید با سرویس SQL Server کار کنید.

در فیلم زیر نحوه نصب SQL Server در محیط ویندوز را مشاهده خواهید کرد.

 

نصب SQL Server Management Studio یا SSMS

بعد از اینکه SQL Server را نصب کرده‌اید، حال باید از آن استفاده کنید برای دستیابی به SQL Server و کار با آن نیاز به یک محیط کاری دارید، نام این محیط کاری SQL Server Management Studio یا SSMS است. پس باید آنرا نصب کنید. توجه کنید که ابتدا طبق ویدئو بالا SQL Server را نصب سپس SSMS را دانلود و آنرا نصب کنید.

 

نصب SQL Server در Linux (لینوکس)

از سال ۲۰۱۷ مایکروسافت تصمیم گرفت تا SQL Server را روی لینوکس هم بتوانیم نصب و راه اندازی کنیم. اگر به دنبال نصب SQL Server در اوبونتو یا لینوکس هستید پیشنهاد می کنم ویدئو زیر را تماشا کنید.

اهمیت یادگیری SQL Server چیست (آموزش SQL Server)؟

در دنیای امروز با ارزش‌ترین دارایی شرکت‌ها و سازمان‌ها بدون شک دیتا می‌باشد. هم اکنون حجم دیتایی تولید شده در دنیا روز به روز در حال افزایش است و استفاده از سیستم‌های ذخیره اطلاعات امری است طبیعی، پس آموزش و یادگیری RDBMSای چون SQL Server هم یک امر طبیعی محسوب می‌گردد.
تصور کنید شما به عنوان یک برنامه‌نویس می‌خواهید یک نرم افزار حسابداری کدنویسی کنید. پس باید یک زبان برنامه نویسی برای اینکار انتخاب کنید، برای مثال شما زبان برنامه نویسی سی شارپ را انتخاب و شروع به کدنویسی می‌کنید. حال تصور کنید نرم افزار آماده است، زمانی که یک فاکتور فروش در نرم افزار ثبت می‌گردد، اطلاعات این فاکتور کجا باید ذخیر گردد؟ پس نیاز داریم از یک RDBMS استفاده کنیم، که به طبع SQL Server انتخاب ما خواهد بود.
حال اینکه بانک اطلاعاتی، جداول، ایندکس‌ها و… در SQL Server را بتوانیم به درستی تعریف کنیم، نیاز به آموزش SQL Server داریم.

انواع داده های SQL Server

در SQL Server و دیگر سیستم‌های مدیریت پایگاه داده، نوع داده (Data Type) به معنای نوع اطلاعاتی است که در هر فیلد یا ستون جدول قرار می‌گیرد. برای مثال، اگر در جدولی مشخص شود که فیلد “سن” از نوع داده “Integer” است، به این معناست که تمام مقادیر قابل قبول برای این فیلد، اعداد صحیح هستند و هر عدد اعشاری در این فیلد مجاز نیست.

نوع داده برای یک فیلد، مشخص کننده حداکثر حجم داده و نوع اطلاعاتی است که در آن قابل قبول هستند. برای مثال، فیلدی که از نوع “Char(10)” باشد، می‌تواند حداکثر ۱۰ کاراکتر در خود نگه دارد و هرگونه داده‌ای که بیشتر از این حجم داشته باشد، نمی‌تواند در آن ذخیره شود.

در مواردی که نوع داده‌ی درست مشخص نشده باشد، داده به صورت پیش‌فرض به نوع “VarChar” یا “NVarchar” تبدیل می‌شوند. با این حال، توصیه می‌شود که همیشه نوع داده‌ی صحیح را برای هر فیلد یا ستون در جداول SQL Server مشخص کنید تا داده‌هایی که به پایگاه داده ارسال می‌کنید به صورت صحیح دریافت و ذخیره شوند.

شایان ذکر است انتخاب نوع داده درست در ساختار دیتابیس در سرعت و کارایی آن تاثیر بسزایی دارد. هنگامی که نوع داده صحیح را برای هر فیلد یا ستون مشخص می‌کنیم، SQL Server بهینه‌ترین روال را برای ذخیره و بازیابی داده‌ها انتخاب خواهد کرد. به‌عنوان مثال، در صورتی که نوع داده فیلد را از نوع “Integer” به جای “VarChar” تعیین کنیم، سرعت بازیابی داده‌ها افزایش خواهد یافت و در نتیجه کارایی سیستم بهبود پیدا خواهد کرد. پس در انتخاب نوع داده هر فیلد باید دقت کنید.

بررسی چندین سناریو در حوزه Data Type

در قالب چند مثال و سناریو می‌خواهم انواع داده در SQL Server را برای شما توضیح دهم.

سناریو شماره یک: فرض کنید یک شرکت بازرگانی لیستی از مشتریان خود را در یک جدول در SQL Server ذخیره می‌کند. در این جدول، برای هر مشتری، اطلاعاتی مانند نام، آدرس، تلفن و ایمیل آنها ذخیره می‌شود. در ادامه، نوع داده‌هایی که برای هر ستون می‌توان استفاده کرد و کاربرد آن‌ها را مورد بررسی قرار می‌دهیم:

آدرس مشتری: می‌توان از نوع داده “VarChar” یا “NVarChar” برای آدرس استفاده کرد.

تلفن مشتری: می‌توان از نوع داده “VarChar” برای تلفن استفاده کرد، اما برای پشتیبانی از شماره‌های بین‌المللی، بهتر است از نوع داده “NVarChar” استفاده کنیم. برای مثال، فیلد تلفن را می‌توان با نوع داده “NVarChar (15)” تعریف کرد.

ایمیل مشتری: می‌توان از نوع داده “VarChar” برای ذخیره ایمیل استفاده کرد. برای مثال، فیلد ایمیل را می‌توان با نوع داده “VarChar (100)” تعریف کرد.


سناریو شماره دو: در این سناریو می‌خواهیم در مورد ذخیره اطلاعات پولی صحبت کنیم. برای مثال، فرض کنید که یک سیستم بانکی راه اندازی می کنید و می خواهید مبالغ پولی را در داخل پایگاه داده ذخیره کنید. در اینجا نوع داده ای که برای ذخیره مبالغ پولی استفاده می شود بسیار مهم است، زیرا می تواند تأثیر مستقیمی بر روی دقت و دقت محاسباتی داشته باشد.

در SQL Server برای ذخیره مبالغ پولی می توان از دو نوع داده numeric و money استفاده کرد. در صورتی که قرار است در محاسبات اعداد صحیح و اعشاری دقت بالایی داشته باشید، بهتر است از نوع داده numeric استفاده کنید. این نوع داده به شما اجازه می دهد که دقت و تعداد اعشار مورد نظر خود را برای عدد انتخاب کنید. برای مثال، numeric(10,2) به شما اجازه می دهد که عددی با حداکثر ۱۰ رقم و ۲ رقم اعشار ذخیره کنید.

اگر تنها قرار است مبالغ پولی را در داخل پایگاه داده ذخیره کنید و به دقت محاسباتی دقت ندارید، می توانید از نوع داده money استفاده کنید. این نوع داده برای ذخیره مقادیر پولی طراحی شده است و به شما اجازه می دهد تا عددی با حداکثر ۱۹ رقم و ۴ رقم اعشار را ذخیره کنید.

ولی برای سیستم هایی که کسب و کار آنها مصرف داخلی (ایران) دارد اصولا نوع داده پولی DECIMAL یا FLOAT انتخاب می گردد.


سناریو شماره سه: این سناریو در مورد یک سیستم است که مدیریت پروژه های عمرانی را کنترل می کند در این سناریو که اطلاعات پروژه‌های مختلف را در بر دارد، جدولی با نام “Project” و دو ستون به نام‌های “IsCompleted” و “CompletionDate” وجود دارد.

ستون “IsCompleted” نوع داده بولین دارد و مشخص می‌کند که آیا پروژه تکمیل شده است یا خیر. مقدار true برای این ستون به معنی این است که پروژه تکمیل شده است و مقدار false به معنی این است که پروژه هنوز تکمیل نشده است.

ستون “CompletionDate” نوع داده تاریخ دارد و تاریخ تکمیل پروژه را ذخیره می‌کند. اگر پروژه تکمیل نشده باشد، این ستون مقدار NULL را در بر خواهد داشت.

به عنوان مثال، در صورتی که پروژه با شماره ۱۰۰ در تاریخ ۱۵ مرداد ۱۴۰۰ تکمیل شده باشد، جدول “Project” به شکل زیر خواهد بود:

شغل‌های مرتبط با SQL Server کدام هستند!؟

زمانی که می‌خواهید وارد دنیای SQL Server و دیتا شوید، اگر نگاه تخصصی به این بازار داشته باشید قطعا می‌توانید یک مسیر شغلی مناسب هم برای آینده خود ترسیم کنید. شغل‌های مرتبط با SQL Server را که در ایران و دنیا خواهان زیادی دارند در زیر برای شما لیست کرده‌ام.

SQL Server DB Admin:

مدیر بانک اطلاعاتی در SQL Server در حقیقت شخصی است که کارهای مرتبط به مباحث Administration را انجام می‌دهد. این شغل بیشتر وظبفه نگهداری و بهینه‌سازی بانک‌های اطلاعاتی را بر عهده دارد. مواردی هم چون Performance & Tuning , High Availability و… بر عهده ایشان است.

SQL Server BI Developer:

یکی از جذاب‌ترین شغل‌ها در حوزه دیتا، قطعا کارشناس هوش تجاری می‌باشد. این شغل که به بازی با دیتا هم معروف است به سازمان‌ها کمک می‌کند که تصمیمات را بر اساس داده بگیرند و تصممیات در سازمان از احساس محور به داده محوره تبدیل می‌گردد. برای اینکه در این شغل موفق شوید باید SQL Server و مخصوصا کوئری نویسی را خوب بلد باشید.

چه رتبه ای می‌دهید؟

میانگین ۴.۸ / ۵. از مجموع ۱۸

اولین نفر باش

title sign
برچسب ها
title sign
دانلود مقاله
آموزش SQL Server | مبانی و رایگان
فرمت PDF
صفحه
حجم مگابایت
دانلود مقاله
دوره حضوری BI نیک آموز
هوش تجاری انبار داده
title sign
معرفی نویسنده
فرید طاهری
مقالات
6 مقاله توسط این نویسنده
محصولات
8 دوره توسط این نویسنده
فرید طاهری

فرید طاهری بنیان‌گذار و مدیرعامل شرکت نیک‌آموز است او همچنین: ایده‌پرداز محصولات آموزشی، آموزش سبک‌های تدریس نوین و جذاب به مدرسین، متخصص دیجیتال مارکتینگ، برنامه‌نویس سی‌شارپ و SQL Server، طراح و تحلیل‌گر سیستم‌های مالی و اداری، مشاور کسب و کارهای اینترنتی نیز می‌باشد.

پروفایل نویسنده
title sign
دیدگاه کاربران

    • با سلام و احترام، ویدئوهایی که دیدم بسیار عالی بود. یک سوال از خدمتتان دارم. آیا امکان صدور گواهی برای دوره‌ای که دیده‌ام وجود دارد یا خیر؟

      • با سلام و عرض ادب
        رضایت شما باعث خرسندی ماست. خیر این محتوای رایگان مدرک یا گواهی ندارد

    • سلام
      تعداد ویدیو هایی که دیدم عالی بودن

    • سلام.
      هم بابت ارسال ایمیل های آموزشی تون و هم بابت راهنمایی های آقای مهندس طاهری که افتخار آشنایی باهاشون رو در ایام نمایشگاه پیدا کردم از مجموعه نیک آموز سپاسگزارم. هدفم از حضور در نمایشگاه و درخواست این دوره رایگان آموزشی، نیازی هست که مجموعه ما نسبت به مباحث دیتا بیسی احساس کرده است. در زمان مقتضی حتما از تجارب و دانش شما استفاده بیشتری خواهیم کرد.

      موفق باشید

    • با سلام
      به نظرم یکم برا نظر دادن زودده ولی نسبتا خوبه

    • باتشکر از زحمات دوستان
      دوره های مفید و کاربردی با رویه کاملا ساده و روان

    • باتشکر از زحمات دوستان
      دوره های مفید و کاربردی با رویه کاملا ساده و روان

    • تبریک میگم بابت این کلاس فوق العاده

    • تبریک میگم بابت این کلاس فوق العاده

    • سلام وقت بخیر.
      یه سوال داشتم نمیدونم جای خوبی برا سوال پرسیدن انتخاب کردم یانه.
      سوال من اینه که چجوری میشه یه تریگر یا تسک یا هرچیزی که امکانش هست، نوشته بشه و تمام دستورات عملیاتی مانند INSERT,UPDATE,DELETE رو ذخیره کرد. یعنی هر درخواستی با این مضامین توسط سرور دیتابیس sql اجرا میشه تو یه جدول ذخیره بشه؟( حتی اگه بشه تو یه دیتابیس دیگه ذخیره کرد که چه عالی)
      این کارو میشه توسط برنامه کاربر انجام داد اما من میخوام ببینم میشه زحمت و بار انجام این کار رو مستقیم سپرد به دیتابیس یا نه(فضای ذخیره سازی و حجیم شدن دیتابیس اصلا مد نظر نیست) ؟

      • درود بر شما
        به نقل از مهندس مسعود طاهری

        به این موضوع Audit دیتا می گویند چندین روش داریم
        Trigger
        CDC
        Temporal Tables
        Audit

        در دوره امنیت (۰۰۷) جزئیات و تکنیک ها و معایب و محاسن این موضوع بررسی شده است

        شما می توانید مباحث دوره امنیت را از لینک زیر بررسی نمایید

        https://nikamooz.com/product/security-course-sql-server/

    • سلام وقت بخیر.
      یه سوال داشتم نمیدونم جای خوبی برا سوال پرسیدن انتخاب کردم یانه.
      سوال من اینه که چجوری میشه یه تریگر یا تسک یا هرچیزی که امکانش هست، نوشته بشه و تمام دستورات عملیاتی مانند INSERT,UPDATE,DELETE رو ذخیره کرد. یعنی هر درخواستی با این مضامین توسط سرور دیتابیس sql اجرا میشه تو یه جدول ذخیره بشه؟( حتی اگه بشه تو یه دیتابیس دیگه ذخیره کرد که چه عالی)
      این کارو میشه توسط برنامه کاربر انجام داد اما من میخوام ببینم میشه زحمت و بار انجام این کار رو مستقیم سپرد به دیتابیس یا نه(فضای ذخیره سازی و حجیم شدن دیتابیس اصلا مد نظر نیست) ؟

      • درود بر شما
        به نقل از مهندس مسعود طاهری
        به این موضوع Audit دیتا می گویند چندین روش داریم
        Trigger
        CDC
        Temporal Tables
        Audit
        در دوره امنیت (۰۰۷) جزئیات و تکنیک ها و معایب و محاسن این موضوع بررسی شده است
        شما می توانید مباحث دوره امنیت را از لینک زیر بررسی نمایید
        https://nikamooz.com/product/security-course-sql-server/