PDA

View Full Version : عدم اتصال به SQL



foo0z0ool
سه شنبه 27 اسفند 1398, 02:54 صبح
سلام
من سورس یه برنامه مدیریت پرسنل از اینترنت دانلود کردم

اما وقتی برنامه رو اجرا میکنم پیام میده که نمیتونه به دیتابیس SQL وصل بشه

https://aghazeh.com/%D9%BE%D8%B1%D9%88%DA%98%D9%87-%D8%B1%D8%A7%DB%8C%DA%AF%D8%A7%D9%86-%D9%85%D8%AF%DB%8C%D8%B1%DB%8C%D8%AA-%DA%A9%D8%A7%D8%B1%D9%85%D9%86%D8%AF%D8%A7%D9%86-%D8%B2%D8%A8%D8%A7%D9%86-%D8%B3/

این لینک دانلود سورس هستش !

چیزی که فکر میکنم باهاش مشکل داشته باشه اینه

string strConnectionstring = @"Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirector y|\karmandan.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";
اینجا میخواد از طریق SQLEXPRESS به دیتا بیس متصل بشه که من اصلا این برنامه رو ندارم من از برنامه2019 SQL SERVER استفاده میکنم

لازمه که اکسپرس رو نصب کنم ؟

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

اگه هم باید که نسخه sql express رو نصب کنم آیا امکان نصب هر دو برنامه اینترپرایس و اکسپرس هم زمان هستش ؟


ببخشید من تازه کارم و تازه دارم شروع میکنم

یه چیز دیگه من دیتابیس رو توی sql server اتچ کردم اما نمیدونم چه کدی رو باید جایگزین کنم که نوع اتصال عوض بشه و بتونم به دیتابیس وصل بشم

SqlConnection con = new SqlConnection(@"Data Source=.;Initial Catalog=Karmandan;Integrated Security=True");

از این کد استفاده کردم به جای کد بالا اما باز هم اتصال برقرار نشد

اگه اساتید یه کد بنویسن که جایگزین کد بالا کنم وبتونم به دیتابس متصل بشم ممنون میشم

ShayanFiroozi
سه شنبه 27 اسفند 1398, 09:10 صبح
سلام ،

در خصوص نصب 2 نسخه SQL باید عرض کنم بله امکان پذیره ولی شما نیاز به نسخه Express ندارین چون ورژن SQL Enterprise شما 2019 هست ، پس براحتی میتونین دیتابیس های اکثر SQL Server های قبلی رو توش Attach کنین.

در خصوص Connection String یه چیزی که خیلی مهمه نام یا آدرس سروره ،

1- اولا Windows Firewall رو کلا خاموش کنین ، حتی در حالت Advance.

https://www.lifewire.com/how-to-disable-the-windows-firewall-2624505

2- اگر آنتی ویروس هایی دارین که پروتکل های شبکه رو تحت کنترل میگیرن کلان غیر فعالش کنین ( حداقل قسمت فایروالش).

3- موقع نصب SQL Server شما اگر از Instance Name پیشفرض استفاده کردین همون دات ( نقطه) به عنوان نام سرور کافیه ، .ولی اگر اونو تغییر دادین باید حتما قید بشه مثلا :


.\SQLServer2019
.\SQLExpress
192.168.100.200\MyTestSQL

4- در خصوص نام کاربری و پسورد دقت کنین SQL خیلی حساسه :

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

https://www.connectionstrings.com (https://www.connectionstrings.com/)

بنده در رشته اتصال شما قسمت نام کاربری و کلمه عبور نمیبینم !

این یک نمونه استاندارد از رشته اتصال به SQL Server هستش :

https://www.connectionstrings.com/ole-db-driver-for-sql-server/

باز هم اگر موردی بود یا قسمتی از سورس رو بفرستین و یا خطای صادر شده رو.

ممنون.

foo0z0ool
سه شنبه 27 اسفند 1398, 13:28 عصر
سلام ،

در خصوص نصب 2 نسخه SQL باید عرض کنم بله امکان پذیره ولی شما نیاز به نسخه Express ندارین چون ورژن SQL Enterprise شما 2019 هست ، پس براحتی میتونین دیتابیس های اکثر SQL Server های قبلی رو توش Attach کنین.

در خصوص Connection String یه چیزی که خیلی مهمه نام یا آدرس سروره ،

1- اولا Windows Firewall رو کلا خاموش کنین ، حتی در حالت Advance.

https://www.lifewire.com/how-to-disable-the-windows-firewall-2624505

2- اگر آنتی ویروس هایی دارین که پروتکل های شبکه رو تحت کنترل میگیرن کلان غیر فعالش کنین ( حداقل قسمت فایروالش).

3- موقع نصب SQL Server شما اگر از Instance Name پیشفرض استفاده کردین همون دات ( نقطه) به عنوان نام سرور کافیه ، .ولی اگر اونو تغییر دادین باید حتما قید بشه مثلا :


.\SQLServer2019
.\SQLExpress
192.168.100.200\MyTestSQL

4- در خصوص نام کاربری و پسورد دقت کنین SQL خیلی حساسه :

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

https://www.connectionstrings.com (https://www.connectionstrings.com/)

بنده در رشته اتصال شما قسمت نام کاربری و کلمه عبور نمیبینم !

این یک نمونه استاندارد از رشته اتصال به SQL Server هستش :


Server=myServerAddress;Database=myDataBase;User Id=myUsername;Password=myPassword;

باز هم اگر موردی بود یا قسمتی از سورس رو بفرستین و یا خطای صادر شده رو.

ممنون.

شایان عزیز ممنون از جوابتون من فایروالم همیشه روشنه ولی چون به شبکه کاملا آشنایی دارم اتصال به سرور SQL بدون مشکل انجام میشه چون تنظیمات برنامه فایروال بنده به صورت دستی هستش

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

اما در مورد پسورد دیتا بیس من پسورد نداره کلا ( یعنی موقع نصب SQL بدون یوزر و پسورد نصبش کردم که به طور اتوماتیک بتونم با یوزر ویندوز وصل بشم )

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

در مورد سورس که فرمودین من یه لینک گذاشتم از اونجا میتونین کل برنامه رو دانلود کنین و ببینید

ShayanFiroozi
سه شنبه 27 اسفند 1398, 14:55 عصر
در مورد کد مشکل این بود که از سایت کپی گرفته بودم ظاهرا کد HTML رو نشون میده !!

به هر حال از این لینک میتونین انواع کانکشن استرینگ ها رو ببینید :


https://www.connectionstrings.com/ole-db-driver-for-sql-server (https://www.connectionstrings.com/ole-db-driver-for-sql-server/)

در رشته ای که کار میکنه به جای
.\SQL Express از . (دات) تنها استفاده کنین ، ولی برای اطمینان بیشتر نمونه های سایت رو ببینید.

foo0z0ool
جمعه 15 فروردین 1399, 06:38 صبح
من تمام راههای گفته شده رو که توی سایت بود چک کردم, اما هیچ کدوم جواب نداد و متاسفانه هیچ کدوم از دوستان پاسخ ندادن



بازم تشکر میکنم از اینکه کسی جواب نداد

سوال من سخت نبود یه پروژه اوپن سورس دانلود کردم

طریقه ی اتصالش به دیتابیس از روش کانکشن استرینگ sqlexpress هستش اما من این برنامه رو روی سیستمم ندارم و نمیخوام هم نصبش کنم ( اینکه sql صد تا ورژن داره و هر برنامه نویس از یه دونش استفاده میکنه یکی sql server یکی mssql یکی sql compact یکی از sql express ) دلیل نمیشه که منم بیام همه اینها رو روی سیستمم نصب کنم که بدونم هر دیتابیسی که دیدم بهتش وصل بشم و فکر میکنم بهتر این باشه که یاد بگیرم چطور کانکشنهاشون رو تغییر بدم و بتونم ازشون استفاده کنم

متاسفانه توی دنیایی که تقریبا همه برنامه ها از ریز تا درشت دارن به سمت اوپن سورس و دنیای باز داده ها پیش میرن متاسفانه دوستان برنامه نویس ایران فکر میکنن اگه کد کمتر به کسی یاد بدن یه قدم جلو هستن یا متاسفانه موقع آموزش دادن یه جوری آموزش میدن که آدم سه دور دوره خودش بچرخه در حالی که با یه نیم خط ساده همون کار رو میشه کرد

پیشنهاد میکنم به فروم اکسس یه سری بزنین پرسش و پاسخ اونجا رو ببینین و اینکه دوستانی که اونجا هستند چطور به هم کمک میکنن نه اینکه بعد از چند هفته هیچ کس حتی سعی هم نکنه که کمک کنه توی اینجا !

بازم از آقا شایان ممنونم که در حد توانشون کمک کردن و سعی کردن من و راهنمایی کنن ( هر چند تمام کانشکشنهای سایتی که معرفی کردین رو من تست کردم هیچ کدوم کار نکرد )