PDA

View Full Version : چند سوال مبهم از دیتابیس اسکیوال سرور



samiasoft
پنج شنبه 27 مهر 1396, 01:10 صبح
سلام و عرض ادب به دوستان برنامه نویس

دوستان من چندروزی میشه که این چندسوال ذهنمو درگیر کرده چون اطلاعات مفیدی از طریق جستجو و یا فیلم های اموزشی در این باره بدست نیاوردم.

من دیتابیس رو با نسخه 2014 اسکیوال سرور اینترپرایز ساختم و در برنامم دستوراتی نوشتم که در سیستم مشتری این دیتابیس رو اتومات اتچ کند تا نیاز نباشه بصورت دستی اینکار انجام شود.

در سیستم مشتری هم نسخه اکسپرس نصب کردیم و مشکلی نداریم.


سوالاتی که مطرح میشود این هستش که :

- ایا دستور زیر برای اتچ کردن به نظرتون درسته ؟ در همه سیستم ها به مشکل برنمیخوریم ؟
SqlConnection Con = new SqlConnection(@"Data Source =.; Initial Catalog = Database3; Integrated Security = True");



SqlConnection Con = new SqlConnection();
Con.ConnectionString = "Data Source =.; Initial Catalog = master; Integrated Security = True";
Con.Open();


string attachdb = "USE master;" +
"execute sp_attach_db @dbname=N'Database3' , " +
"@filename1=N'" + System.Environment.CurrentDirectory + "\\Database3.mdf' , " +
"@filename2=N'" + System.Environment.CurrentDirectory + "\\Database3_log.ldf'"; ;
SqlCommand cmd2 = new SqlCommand(attachdb, Con);
cmd2.ExecuteNonQuery();


Con.Close();

نکته : در دستور بالا که در برنامه قرار میدیم نیازمند این هستش که پوشه دیباگ برنامه که دیتابیس نیز داخلش قرار دارد دسترسی فول کنترل داشته باشد برای همین بایستی یوزر everyone را در قسمت security پوشه دیباگ اضافه کنیم تا خطای دسترسی به دیتابیس هنگام اتچ نداشته باشیم که این کار توسط ستاپ ساز ها نیز میتواند انجام شود.

- سوال بعدی که مطرح میشود این هست که ایا شما فایل ستاپ اکسپرس که نسخه 64 بیتی و 32 بیتی ( هرکدام حدود 300 مگ دارند برای نسخه 2014 ) اینارو هم داخل فایل ستاپتون قرار میدید که خودش اتومات نصب بشه ؟ یا اینکه بهتره دستی نصب بشه ؟

- سوال بعدی که در ادامه سوال بالا هستش به نظرتون نسخه 32 بیتی اسکیوال اکسپرس رو میتوان در ویندوز 64 بیتی نصب کرد ؟ تا هردو اینارو داخل فایل ستاپ قرار ندیم ؟ چون ویندوز مشتری رو نمیدونیم چند بیتی هست و قرار دادن هردو نسخه در فایل ستاپ حجم رو بالا میبرد! البته میتوان دو تا فایل جداگانه 32 و 64 بیت هم ساخت.

- سوال اخر این که ما الان دیتابیس رو با نسخه اینترپرایز ساختیم و در سیستم مشتری برای ارتباط از نسخه اکسپرس اسکیوال استفاده میکنیم...ایا باز هم محدودیت 10 گیگ داریم برای دیتابیس؟ چون گفته میشه دیتابیس اکسپرس محدودیت 10 گیگ دارد و همچنین محدودیت در سرعت و رم


ممنون میشوم از دوستانی که در این رابطه تجربه دارند بنده رو راهنمایی کنند.:لبخندساده:

samiasoft
شنبه 29 مهر 1396, 05:05 صبح
دوستان نظری ندارید؟

abdullah20
شنبه 29 مهر 1396, 06:32 صبح
سلام

سوال اول
بله دستور اتچ برای تمامی دیتابیس ها به یک صورت پیاده سازی خواهد شد

سوال دوم
هم میتونید دستی نصب کنید هم سایلنت و خب اگر نصب سایلنت را به درستی تنظیم کنید بهتر هستش

سوال سوم
باید یک ستاپ بسازید و خود ستاپ تشخیص بده که اگر سیستم 32 بیتی بود نسخه 32 بیتی sql نصب بشه در غیر این صورت نسخه 64 بیتی

سوال اخر
بله همان محدودیت ها را خواهید داشت