کانال بله, جهت پشتیبانی و اطلاع رسانی کانال بله, جهت پشتیبانی و اطلاع رسانی
عضویت

یادگیری رایگان SQL Server

MSSQLServer یکی از سیستم های مدیریت بانک های اطلاعاتی رابطه ای (Relational)است که توسط شرکت مایکروسافت ارائه شده استSQL Serverاز مدل سرویس دهنده - سرویس گیرنده(Client/Server)تبعیت می نماید. در این مدل، درخواست های(InQuery)سرویس گیرندگان برای سرویس دهنده ارسال و در سمت سرویس دهنده بررسی و آنالیز می گردند. در ادامه، پردازش های‌ مورد نیاز بر روی اطلاعات ذخیره شده در بانک های اطلاعاتی انجام و در نهایت، نتایج برای سرویس گیرنده ارسال خواهد شد.SQL Server با استفاده از مجموعه عناصری(Components)که به صورت هدفمند اجراء می گردند، قادر به تامین نیازها و درخواست ها از مخازن داده(Data Storages)می باشد.


راهنمای اجرای Query در Sql server

چگونه ترتیب اتصال روی query plan تاثیر می گذارد
چگونه ترتیب اتصال روی query plan تاثیر می گذارد

ترتیبی که طبق آن جدول ها در query های شما به یکدیگر متصل هستند، می تواند یک تاثیر نمایشی روی چگونگی اجراهای query شما داشته باشد. اگر query در ابتدا به جدول های بزرگتر و سپس به جدول های کوچکتر متصل شود، این امر باعث انجام پردازش های غیرضروری بسیاری توسط موتور SQL می شود.

4472 بازدید
ادامه
حذف فراخوانی عملکردها (Function Calls) از لیست SELECT
حذف فراخوانی عملکردها (Function Calls) از لیست SELECT

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

6200 بازدید
ادامه
اجتناب از استفاده از نابرابری در عبارت WHERE
اجتناب از استفاده از نابرابری در عبارت WHERE

در بسیاری از موارد وقتی از اپراتور <> استفاده می کنیم (یا هر اپراتور دیگری در ارتباط با NOT، به عنوان مثال NOT IN) جستجوهای ایندکس اجرا نخواهند شد و در عوض اسکن یک جدول یا ایندکس لازم می باشد.

4572 بازدید
ادامه
اجتناب از استفاده از عملکردها در عبارت WHERE
اجتناب از استفاده از عملکردها در عبارت WHERE

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

3977 بازدید
ادامه
راهنمای اجرای Query در sql server
راهنمای اجرای Query در sql server

در طول دوره ای که DBA بودم، اشتباهات متداولی را در هنگام مرور query های SQL مشاهده کردم که برخلاف سیستم هایی که تنظیم می کردم، اجرا می شدند. با این تجربه دریافتم که دستورالعمل های کلی وجود دارند که باید درهنگام نوشتن query ها و همچنین طراحی یک نمودار دیتابیس دنبال شوند.

12794 بازدید
ادامه
اجتناب از استفاده از کاراکترهای Wildcraft برای شروع معیارهای جستجو
اجتناب از استفاده از کاراکترهای Wildcraft برای شروع معیارهای ...

هنگامی که از اپراتور LIKE استفاده می کنید و اولین کاراکتر در رشته ی جستجو یک کاراکتر wildcraft باشد، % یا SQL Optimizer مجبور خواهند بود که اسکن یک جدول یا ایندکس را در هنگام اجرای query انجام دهند.

4432 بازدید
ادامه
استفاده از یک جدول مشتق شده (derived table)به جای IN predicate با عملکردهای aggregate
استفاده از یک جدول مشتق شده (derived table)به جای IN predica ...

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

4683 بازدید
ادامه
اطمینان از ایندکس شدن تمامی ستونها
اطمینان از ایندکس شدن تمامی ستونها

وقتی که یک ایندکس می تواند به اجرای یک query و ستون هایی که JOIN predicate شما را تشکیل می دهند، کمک کند سناریوهای مختلفی وجود دارد و مسئله ی مهمی می باشد.

4637 بازدید
ادامه
استفاده از ترتیب  WHERE, JOIN, ORDERBY, SELECTهنگام ایجاد ایندکس ها
استفاده از ترتیب WHERE, JOIN, ORDERBY, SELECTهنگام ایجاد ای ...

ترتیبی که ستون ها در ایندکس های شما تعیین می شوند، بر این موضوع تاثیر دارد که هنگامی که SQL Optimizer، query شما را تجزیه می کند، آیا کل ایندکس مورد استفاده قرار می گیرد یا نه.

5504 بازدید
ادامه
اطمینان از اینکه همه ی جدول ها یک Clustered Index تعریف شده دارند
اطمینان از اینکه همه ی جدول ها یک Clustered Index تعریف شده ...

دو نوع ذخیره سازی برای جدول ها درSQL Server وجود دارد، جدول های Heap و جدول های Clustered. جدول های Heap جدول هایی هستند که clustered index روی خود ندارند و جدول های Clustered جدول هایی هستند که دارای clustered index می باشند. دلایل کمی وجود دارند که علت توصیه شدن به اینکه جدول ها دارای clustered index باشند را توضیح می دهند.

5968 بازدید
ادامه
استفاده از گزینه ی DELETE CASCADE  برای رسیدگی به Child key Removal در ارتباطات کلید خارجی
استفاده از گزینه ی DELETE CASCADE برای رسیدگی به Child key ...

استفاده از گزینه ی DELETE CASCADE در تعاریف محدودیت کلید خارجی به معنای اجرای بهتر و کد کمتر در هنگام حذف رکدوردها از جدول هایی است که دارای یک رابطه ی parent-child تعریف شده می باشند.

10471 بازدید
ادامه
لغو نرمالسازی (Denormalize) برای اجرا
لغو نرمالسازی (Denormalize) برای اجرا

نمودار denormalize گاهی اجرای بهتری برای query ارائه می دهد، گرچه ممکن است به معنای ذخیره ی داده های غیرضروری باشد. تنها سوال که مطرح می شود این است که فضای اضافه استفاده شده به سود اجرا می افزاید.

5355 بازدید
ادامه