تفاوت بین دو نوع کانکشن استرینگ اتصال به سرور یا اتصال به فایل در پایگاه داده SQLServer
با سلام
من نرم افزاری رو آماده کردم که همه کارش با دیتابیس Sqlserver هست. کانکشن استرینگ رو هم بصورت زیر ایجاد کردم :
SqlConnection my_cn = new SqlConnection("server = .\\MSSQLSERVER2008;database=HarmDatabase;Integrate d Security=True;");
و نیز احتمالا ممکنه بصورت شبکه هم استفاده بشه(شاید).
از طرفی در بعضی منابع دیدم که بجای اتصال به سرور از اتصال به فایل mdf داخل دایرکتوری برنامه استفاده کردند. می خواستم قبل اینکه برنامم رو ستاپ کنم تفاوت بین این دو برام مشخص بشه و بدونم که کدوم بهتره و مزایا و معایبشون چیه؟
البته داخل سایت جستجو کردم که توضیح کلی در مورد مزایا و معایب استفاده از هر کدوم رو پیدا نکردم.
با تشکر.
نقل قول: تفاوت بین دو نوع کانکشن استرینگ اتصال به سرور یا اتصال به فایل در پایگاه داده SQLServer
نقل قول:
از طرفی در بعضی منابع دیدم که بجای اتصال به سرور از اتصال به فایل mdf داخل دایرکتوری برنامه استفاده کردند
سوالتون رو متوجه نشدم
ببینید وقتی شما دارید از دیتابیس اس کیو ال استفاده می کنید 2 حالت داره :
1: دیتابیس شما با پسوند SDF هست که یه نوع بانک کوچیک مثل اکسس هست و برای استفاده ز اون نیاز به برنامه اس کیو ال نیست
2 : دیتابیس شما با پسوند MDF و LDF هست در این حالت شما سه حالت دارید :
الف : می خواهید از نسخه اکسپرس اس کیو ال استفاده کنید , کاه در این حالت فقط کافیه برنامه SQL Exprees رو نصب کنید و نیاز به اتچ کردن دیتابیس ندارید و قاعدتا کانکشن استرینگ اون هم متفاوت هست .
ب : می خواهید از نسخه های غیر اکسپرس اس کیو ال استفاده کنید که در این حالت شما باید ابتدا یکی از نسخه های برنامه SQL رو نصب و دیتابیس رو اتچ کنید و کانکشن استرینگ مخصوص این حالت رو هم تنظیم کنید .
حالا شاید بپرسید که چه تفاوتی بین نسخه اکسپرس و دیگر نسخه ها داره ؟ به طور خلاصه یک سری امکانات رو به صورت محدود در اختیارتون میزاره مثل حجم دیتابیس نمی تونه تا فلان حجم باشه و ... ( برید مطالعه کنید )
ج) در این حالت هیچ تفاوتی با حالت ب نیست و فقط کافیه در کانکشن استرینک ای پی سرور و چند تنظیم دیگه تغییر کنه همین .
نقل قول: تفاوت بین دو نوع کانکشن استرینگ اتصال به سرور یا اتصال به فایل در پایگاه داده SQLServer
public static string GetConnectionString { get { return File.ReadAllLines(@"Database\File.txt")[0]; } }
نقل قول: تفاوت بین دو نوع کانکشن استرینگ اتصال به سرور یا اتصال به فایل در پایگاه داده SQLServer
با تشکر از توجه تون.
این کانکشن مربو به کدوم نوع SQL هست؟
>
connectionString="Server=.\SQLExpress;AttachDbFile name=|DataDirectory|\MyDatabase.mdf;Database=MyDat abaseForTesting;Trusted_Connection=Yes;"
نقل قول: تفاوت بین دو نوع کانکشن استرینگ اتصال به سرور یا اتصال به فایل در پایگاه داده SQLServer
طوری که متوجه شدم کانکشن فوق مربوط به اتصال به SQLServer Express هست. درسته؟ بواقع نحوه اتصال به دیتابیس در SQLServer Express همین روش هست.
حالا اگه من از نسخه اینترپرایس استفاده کنم دیگه نیازی به گذاشتن فایلهای mdf و ldf در دایرکتوری برنامه نیست و باید دیتابیس رو در هنگام لود شدن اولیه برنامه در نسخه اینترپرایس سیستم مقصد ری استور کنم درسته؟
نقل قول: تفاوت بین دو نوع کانکشن استرینگ اتصال به سرور یا اتصال به فایل در پایگاه داده SQLServer
نگاه کنید شما در هر صورتدو فایل که دیتابیس شماست رو دارید در نحوه اتصال به صورت اکسپرس در کانکشن استرینگ آدرس فایل رو ذکر می کنی اما در انواع دیگه میای به اصطلاح اتچ می کنی یعنی اس کیو ال رو اجرا و بعد مراحل اتچ یک دیتابیس رو یک بار برای همیشه انجام می دی که در این مرحله آدرس فایل رو هم از شما می خواد .