در هنگام کار با دیتابیس و پایگاه ذخیره سازی SQL ، ممکن است گاها اشتباهاتی رخ دهد که باعث کندی شده و یا گاهی اوقات باعث بروز خطا شود.
در ادامه لیستی از متداول ترین اشتباهات SQL گردآورده ایم.
اشتباهات رایج متداول در دستورات SQL SERVER
Index ها
ایندکس ها یکی از مهمترین دلایل بروز مشکلات در SQL Server هستند. این بدان معنا نیست که SQL Server به خوبی از ایندکس ها پشتیبانی نمی کند. ایندکس های فراموش شده، ایندکس های اشتباه، تعدد ایندکس ها، آمار قدیمی، ویا عدم نظارت بر ایندکس ها، از جمله مسائل رایج برای کاربران با تجربه کم و بدون تجربه هستند.
توجه داشته باشید که کاربران نهایی شما متوجه نمی شوند که مشکلات بدلیل ایندکس می باشد.
آنها فقط می دانند که پرس و جو های خود بیش از حد معمول طول میکشد و به شما اعلام میکنند که درخواست ها و ارتباط با دیتابیس بشدت کند می باشد.
تصمیمات نادرست
عملکرد صحیح پایگاه داده بزرگ با طراحی اصولی و اولیه پایگاه داده بزرگ مرتبط می باشد. لذا انتخاب نوع داده نامناسب، استفاده از view های داخلی و تودرتو، عدم وجود آرشیو داده ها و پایگاه های اطلاعاتی مرتبط بدون تعریف کلیدهای اولیه یا خارجی از جمله این تصمیمات نادرست می باشد.
پس از آنکه نرم افزار تولید شد، تغییرات در سیستم دشوار است. این بدان معنی است که طراحی ضعیف چیزی است که سالها ممکن است با آن درگیر باشید.
فراموش کردن کلید اصلی (Primary Key)
همچنین تاثیر مهم یک کلید اصلی پرفورمنس (همون Performance) بالای آن است که بدلیل ایجاد Clustered index بروی آن می باشد. حال اگر در جداولمان کلید اصلی نداشته باشیم علاوه بر مشکلاتی که در یافتن رکورد ها داریم کوئری های ما پرفورمنس پایینی خواهند داشت.
تعریف کلید های اصلی مناسب و صحیح نخستین گام در طراحی کارامد یک پایگاه های داده رابطه ایی (Relational Database) هستند. بنابراین وقتی اطلاعات مشتری خاصی را نیاز داریم با حداکثر سرعت و کمترین منابع می توانیم آن را از جدول مربوطه بیرون بکشیم.
کدنویسیهای ضعیف
نمونه هایی از کدنویسی ضعیف نظیر cursors غیر ضروری، عبارات WHERE نادرست و وابستگی به توابع تعریف شده توسط کاربر می باشند. کد نویسی ضعیف منجر به مسائل همزمان می شود، و در نتیجه blocking، locking و deadlocks ایجاد می شود.
ORM ها
یکی دیگر از مسائل مربوط به کانفیگ اشتباه ابزار Object-Relational Mapping یا به اختصار (ORM) می باشد. متاسفانه اغلب آنها به درستی مورد استفاده قرار نمی گیرند، در نتیجه عملکرد سیستم را پایین آورده و منابع زیادی را درگیر میکنند. ORM ها مسأله بسیار پیچیده ای هستند که به راحتی میشود انهارا شناسایی کرد.
در مقاله بعدی بیشتر با این دستورات آشنا میشویم در صورتی که مقاله فوق مورد توجه شما قرار گرفته پیشنهاد میکنیم مقالات “فعالسازی رکوردهای SPF و DKIM در سی پنل” و ”مدیریت DNS ها در سی پنل” در بلاگ مرواهاست مطالعه فرمایید