SQL و مشکلات رایج

زبان SQL چیست؟زبان SQL یک ابزار برای کار با پایگاه داده‌های رابطه‌ای است. در این ابزار می‌توان بین داده‌ها جستجو کرده و آن‌ها را ویرایش، حذف یا حتی از آن‌ها برای نمایش استفاده کرد. برای مثال شما می‌توانید لیست تمام معلمان بالای سی سال یک مدرسه را از دیتابیس آن مدرسه برداشته و پرینت بگیرید. کار SQL بر اساس جبر رابطه‌ای است. بر این اساس برای دسترسی به داده تنها لازم است مشخصات آن را در قالب کد توصیف کنید.منظور از داده ها چیست؟داده یا Data مجموعه ای از حقایق در مورد یک چیز خاص است، به عنوان مثال، سن، وزن و قد، همه حقایق مربوط به یک شخص، اما در دنیای کامپیوتر، تصاویر، فیلم ها، متون و موارد دیگر نیز کلمه داده استفاده می شوند، البته کلمهData جمع است و بهتر است از واژه داده ها استفاده شود.پایگاه داده مجموعه ای سازمان یافته از داده ها است. پایگاه های داده مختلف از ذخیره سازی و پردازش داده ها پشتیبانی می کنند. پایگاه داده ها مدیریت داده ها را آسان می کند.به عنوان مثال، یک دفترچه تلفن آنلاین از یک پایگاه داده برای ذخیره اطلاعات مربوط به افراد، شماره تلفن آنها، سایر اطلاعات تماس و غیره استفاده می کند. یا یک مثال دیگر مانند فیس بوک را نیز در نظر بگیریم. فیس بوک باید داده های مربوط به اعضا، فعالیت های آنها، دوستان، پیام ها، تبلیغات و موارد دیگر را ذخیره، پردازش و نمایش دهد.سیستم مدیریت پایگاه داده چیست؟سیستم مدیریت دیتابیس (Database Management System) نرم افزاری است که با در نظرگیری معیارهای امنیتی مهم، اطلاعات کاربران را بازیابی و ذخیره می کند، این سیستم در حقیقت شامل گروهی از برنامه هایی است که با پایگاه داده ارتباط دارند. نرم افزار DBMS درخواست دیتا از یک اپلیکیشن را قبول کرده و سپس به سیستم عامل دستور ساخت دیتایی خاص را ارسال می کند. علاوه بر این DBMS در سیستم های بزرگ نیز امکان ذخیره یا بازیابی داده را در اختیار کاربران و نرم افزارهای ثالث قرار می دهد.کاربران با استفاده از ابزار DBMS می توانند بر اساس نیاز خود، یک دیتابیس اختصاصی توسعه دهند. در واقع اصطلاح DBMS شامل کاربران پایگاه داده و دیگر برنامه های کاربردی است، به عبارت دیگر این نرم افزار همانند یک پل ارتباطی بین داده ها و اپلیکیشن های کاربردی عمل می کند.انواع سیستم های مدیریت پایگاه دادهچهار نوع اصلیDBMS وجود دارد.Hierarchical - Network DBMS - Relational DBMS- Object Oriented Relation DBMSنرم افزارهای محبوب DBMSMySQLMicrosoft AccessOraclePostgreSQLdBASEFoxProSQLiteIBM DB2LibreOffice BaseMariaDBMicrosoft SQL Server مزايا استفاده از DBMS هاامکان دسترسي سريع به اطلاعات - اطمينان از صحت داده‌ها و اتصال همزمان - استاندارد سازي اطلاعات - قياس پذير، منعطف و قابل توسعه - قائده پذيري و استاندارد سازي - پردازش و بررسي داده‌ها - امنيت بالامعايب استفاده از DBMS هاپيچيدگي در طراحي پايگاه داده- نياز به تهيه سخت افزار و نصب نرم افزار - متمرکز بودن اطلاعات ذخيره شده - وابستگي نرم افزار‌هاراه کارهای جلوگیری و رفع ارور sql serverبرای رفع مشکل اتصال به سرور در sql server استفاده از آخرین نسخه ی sql server ، یکسان بودن پروتکل شبکه بین کامپیوتر شما و سرور مهم است. مثلا اگر client از پروتکل ipx/spx برای اتصال به دیتابیس استفاده می کند این پروتکل بر روی سرور هم نصب شده باشد در غیر اینصورت قادر به برقراری ارتباط نخواهد بود و مشکل دربرقراری ارتباط با sql server وجود دارد و علت عدم برقراری ارتباط با سرور عدم نصب پروتکل ipx/spx خواهد بود.خطاهای رایج هنگام اتصال به دیتابیس۱- خطای Specified SQL Server not foundبرای رفع ارور sql server، مطمئن شوید نامی را که در قسمت sql servername وارد کرده اید درست بوده و سرویس sqlserver که به آن متصل شده اید در حالت start قرار داشته باشد و همچنین بررسی کنید که client و server از net –library یکسانی استفاده می کنند.۲- عدم لاگین با سایر کاربران دیتابیسمطمئن شوید که گزینه ی single user در حالت Off قرار داشته باشد. اگر این گزینه فعال باشد فقط یک کاربر می تواند به دیتابیس لاگین کند.همچنین بررسی کنید کاربری که از طریق آن لاگین کرده اید در دیتابیس موجود و مجوزهای لازم را داشته باشد.۳- فعال بودن گزینه ی DBO use onlyاگر خطایی مبنی بر اینکه تنها مالک دیتابیس می تواند به آن دسترسی داشته باشد را دریافت کردید بدین معنی است که گزینه ی ‘DBO use only’ در وضعیت فعال قرار دارد بنابراین اگر می خواهید سایر کاربران هم به دیتابیس دسترسی داشته باشند آن را درحالت Off قرار دهید.۴- مشکل وصل نشدن به دیتابیس در sql، خطای Assertion failedاگر هنگام اتصال به sql server از طریق tcp /ip خطایی مانند Assertion failed را دریافت کردید اقدام به نصب Client for Microsoft Networks بر روی سرور نمایید.۵- نمایش خطای Specified SQL Server not found در زمان اجرای برنامهاین پیام هنگام لودشدن فایل mdf سنگین ظاهر می شود. در این حالت قبل از اجرای کامل sql server، سرویس connection ایجاد شده و باعث بروز خطا می شود.اگر هنگام اتصال به sql server از طریق QUERY ANALYZER با این خطا مواجه شدید در زمانهای دیگری اقدام به اتصال به sql نموده و یا SQL SERVER را از طریق Service manager دوباره اجرا کنید.۶- خطای ۱۷۸۲۴اگر خطای ۱۷۸۲۴ را دریافت کردید اتصلات شبکه را بررسی نموده و یا گزینه ی ‘priority boost’ در sql server را به مقدار پیش فرض آن تغییر دهید.۷- خطا در خواندن از پایگاه داده – خطای Server Error in ‘/’ Applicationخطا در برقراری ارتباط با پایگاه‌داده معمولا هنگامی رخ می دهد که شما connection string مناسب رو انتخاب نکرده باشید. برای حل مشکل server error in ‘/’ application، سایر فیلدهای آن را بررسی و از صحیح بودن آدرس دیتابیس سرور ، نام کاربری و کلمه ی عبور و نام دیتابیس اطمینان حاصل فرمایید.نویسنده : سید شاهین موسوینام استاد: دکتر مریم حاجی اسمعیلی. دکترای علوم کامپیوتر از دانشگاه کینگستون لندنDr.Maryam HajiesmaeiliPhD of computer science from Kingston university of London https://ir.linkedin.com/in/dr-maryam-hajiesmaeili-90930743