حالت های کلی اش اینه :
1) روی سیستم SQL Server نصب نشده.
2) روی سیستم SQL Server نصب شده ولی Service اش Disable ئه یا Start نشده، ترکیب کلیدی
کلید ویندوز +
کلید R را فشار دهید (
) تا پنجره Run باز بشه، عبارت
services.msc را داخل پنجره Run تایپ کنید و OK کنید. پنجره Services ویندوز باز میشه. سرویس های SQL Server اونجا باید باشه.
مثلا SQL Server (SQLEXPRESS) و SQL Server (MSSQLSERVER) و ... در ستون Status شون مشخصه که Started شدن یا نه. اگه فرضا SQL Server (SQLEXPRESS) در حالت Started نباشه نمیشه با SQL Server Express ارتباط برقرار کرد. اگه روی اون سرویس راست کلیک کردید و Start کردید ولی خطا داد و اجرا نشد، ایرادی در نصب SQL Server هست که خودش یک بحث مفصله، اعم از بد نصب کردن و تداخل با نسخه های قبلی نصب شده و تنظیمات اشتباه موقع نصب و دسترسی های نامناسب در ویندوز و ...
3) روی سیستم SQL Server نصب شده و سرویس اش هم در حال اجرا هست، ولی Connection String میخواد با Instance ای ارتباط برقرار کنه که روی این سیستم معتبر نیست، فرضا موقع نصب کردن SQL Server از Default Instance استفاده شده ولی در Connection String بجای . (نقطه) یک اسم دیگه بکار برده شده یا اسم Instance ای مثل SQLEXPRESS ثبت شده ولی در Connection String اسم دیگری مثل MSSQLSERVER بکار برده میشه یا فرضا اسم کامپیوتر PC1 ئه ولی توی Connection String از اسم ALIREZA-PC استفاده شده. اینا همه شون باعث میشه که سرور مورد نظر پیدا نشه.
اگه بخواهید Connection String تنظیم شده رو ببینید در ویژوال استدیو منوی Project گزینه ...project Name} Properties} زبانه Settings می توانید مقدارش رو به عنوان یک متغیر Save شده ببینید. اصولا اینکه Connection String یک مقدار ثابت باشه و کاربر برنامه تون نتونه از داخل برنامه Connection String رو عوض کنه یک عیب بزرگ ئه. بهتره که هر برنامه ای می نویسید قبل از اتصال به پایگاه داده یک امکانی به کاربر بدید که جایی در فرمی مقدار Connection String رو ببینه و ویرایش کنه. در خیلی از پروژه ها این مشکل اساسی هست، دلیلش هم اینه که خود ویژوال استدیو برای ساده کردن اینجور ویرایش کردن ها قابلیتی اضافه نکرده و برنامه نویس ها هم ازش غافل میشن.