PDA

View Full Version : بروز خطا هنگام برقراری ارتباط با دیتابیس



Mansoor92
جمعه 21 شهریور 1393, 20:15 عصر
سلام

من یک برنامه نوشتم و دیتابیسم اس کیو ال اکسپرس 2005 هست

وقتی توی یک سیستم دیگه برنامه رو نصب میکنم (همچنین اس کیو ال اکسپرس 2005 هم نصب هست) پیغام خطای زیر رو میده

ممنون میشم راهنمایی کنید

محمد آشتیانی
جمعه 21 شهریور 1393, 21:22 عصر
سلام
دوست عزیز به احتمال بسیار زیاد مشکل از کانکشن استرینگ شماست که برنامه نمیتونه به دیتابیس وصل بشه
به هر صورت شما باید جزئیات بیشتری اینجا عنوان کنی (مثل کانکشن استرینگ یا هر چیزی که فکر میکنی ممکنه برای راهنمایی کمکی بکنه)

mohammad reza beizavi
جمعه 21 شهریور 1393, 21:37 عصر
شما برای نصب و کارکردن برنامه نیاز به نصب engine مورد نظر، attach یا restore کردن دیتابیس برنامه و جایگزین کردن connection string برای اتصال برنامه به دیتابیس دارید.
اگر این مراحل رو انجام دادید. جزییات بیشتری (همونجور که جناب آشتیانی فرمودن) بذارید تا بشه راهنمایی کرد

Mansoor92
جمعه 21 شهریور 1393, 22:03 عصر
من فقط اس کیو ال اکسپرس 2005 رو نصب کردم که داخلش انجین هم بود اما قابلیت ریستور نداره

خیلی ممنونم ازتون



<connectionStrings>
<add name="Anbar_Bahar.Properties.Settings.DataBase_AnbarConn ectionString"
connectionString="Data Source=.\SQL2005;Initial Catalog=DataBase_Anbar;Integrated Security=True"
providerName="System.Data.SqlClient" />
</connectionStrings>

mohammad reza beizavi
جمعه 21 شهریور 1393, 22:23 عصر
اول اینکه بهترین راه برای اینکار استفاده از sql server ce هست. (SQL Server Compact Edition)
این نسخه رایگانه، نیازی به نصب نداره و تقریبا تمام قابلیتهای SQL Server standard رو هم داره و بسیار مناسبه برای برنامه های تک کاربره.

برای attach کردن دیتابیس به Engine هم بهتره از sqlcmd استفاده کنید که می تونید توی RUN بزنید و وارد محیط command line بشید:


sqlcmd -U username -S computerName\instanceName => example: sqlcmd -U sa -S .\sqlexpress


بعد از login کردن می تونید با استفاده از sp_attach_db و داشتن فایلای mdf و ldf با ساختار زیر بانکتون رو attach کنید:



EXEC sp_attach_db @dbname = N'datadaseName'
@filename1 = N'D:\bankdir\test.mdf',
@filename2 = N'D:\bankdir\test_log.ldf';






یه نکته کوچک: اسم پیشفرض sqlexpress همینه و باید توی connectio string باید این مورد که گذاشتید sql2005 رو اصلاح کنید.

Mansoor92
شنبه 22 شهریور 1393, 14:43 عصر
اول اینکه بهترین راه برای اینکار استفاده از sql server ce هست. (SQL Server Compact Edition)
این نسخه رایگانه، نیازی به نصب نداره و تقریبا تمام قابلیتهای SQL Server standard رو هم داره و بسیار مناسبه برای برنامه های تک کاربره.

برای attach کردن دیتابیس به Engine هم بهتره از sqlcmd استفاده کنید که می تونید توی RUN بزنید و وارد محیط command line بشید:


sqlcmd -U username -S computerName\instanceName => example: sqlcmd -U sa -S .\sqlexpress


بعد از login کردن می تونید با استفاده از sp_attach_db و داشتن فایلای mdf و ldf با ساختار زیر بانکتون رو attach کنید:



EXEC sp_attach_db @dbname = N'datadaseName'
@filename1 = N'D:\bankdir\test.mdf',
@filename2 = N'D:\bankdir\test_log.ldf';











یه نکته کوچک: اسم پیشفرض sqlexpress همینه و باید توی connectio string باید این مورد که گذاشتید sql2005 رو اصلاح کنید.






ممنونم از راهنمایی هاتون



<font color="#333333">sqlcmd -U username -S computerName\instanceName => example: sqlcmd -U sa -S .\sqlexpress</font>



میشه لطفا در مورد کدبالا یکم توضیح بدید که اصلا باید چیکار کنم؟
چون من هرچی میزنم کد ها اینشکلی میاد


پ .ن: موق نصب اسم sqlexpress رو به sql2005 تغییر دادم

mohammad reza beizavi
یک شنبه 23 شهریور 1393, 11:00 صبح
درود بر شما
اول سوال تا یادم نرفته: شما دیتابیستون روی sqlexpress هست یا روی sql standard؟
بعد هم اینکه شما وارد sqlcmd شدینف دیگه لازم نیست خط اول رو بنویسین.
ولی اون سه تا خط دیگه رو در یک خط بنویسید، آخرش سیمی کولن بذارید. بعد در خط بعدی دستور Go رو بزنید تا دستور اجرا بشه.
شاید مطلب رو گم کنم، یه پیام خصوصی بدید که بتونم پیدا کنم این مطلب رو

samanelf
پنج شنبه 27 شهریور 1393, 00:21 صبح
http://barnamenevis.org/showthread.php?469576-%D8%AA%D8%B3%D8%AA-%D9%BE%D8%B1%D9%88%DA%98%D9%87&p=2104617#post2104617

میشه این تاپیک منم نگاهی بکنین