PDA

View Full Version : مشکل در ریستور کردن فایل bak



amirdifraxe1
سه شنبه 04 مرداد 1390, 20:04 عصر
سلام بر همه ی اساتید...
من تو ریستور با خطایه زیر روبرو می شم.. باید چه کار کنم؟

Cannot open backup device 'C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\ F:\New folder\BackUp.BAK '. Operating system error 123(The filename, directory name, or volume label syntax is incorrect.). RESTORE DATABASE is terminating abnormally.


با این کد با خطایه بالا مواجه می شم.
---------------------------------------------

OpenFileDialog1.Filter = "BAK(*.BAK)|*.BAK"
OpenFileDialog1.Title = "انتخاب فایل"
OpenFileDialog1.ShowDialog()
a = OpenFileDialog1.FileName
TextBox1.Text = a
-------------------------------------------
این کد در دکمه قرار داره.

conn.Open()
Dim dt As New SqlDataAdapter
Dim com As New SqlCommand
com = New SqlCommand("RESTORE DATABASE GOLD FROM DISK = ' " & a & " ' ", conn)
dt.SelectCommand = com
com.ExecuteNonQuery()
MsgBox("Ok Shod")


مرسی از راهنمایی شما.ممنون می شم کمکم کنید.

حمیدرضاصادقیان
چهارشنبه 05 مرداد 1390, 12:03 عصر
دوست عزیزسلام.
این مسیر رو ببین


C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\ F:\New folder\BackUp.BAK

این الان داره همزمان هم از درایو c هم از درایو F فایل Backup شمارو میخونه و براش نامفهومه.مسیر رو درست انتخاب کنید مشکل حل خواهد شد.

amirdifraxe1
پنج شنبه 06 مرداد 1390, 00:20 صبح
الان مشکل بالا حل شد دوست عزیز

من الان نمی دونم موقع ریستور بانک رو disconnect, یا detach کنم یا کاری دیگه ,,,نمی دونم ,,, و از برنامه خودم هم نمی تونم چون وقتی بازگردانی رو می زنم می گه که بانک در حال استفاده است...چه کار کنم از برنامه خودم ریستور کنه؟

حمیدرضاصادقیان
یک شنبه 09 مرداد 1390, 13:03 عصر
موقع Restore شما نباید Connection باز به دیتابیس داشته باشید.
مثلا با استفاده از Use databasename میتوانید Connection رو تغییر بدید. یا مثلا سعنی کنید با استفاده از دستور kill تمام Connection های باز به دیتابیس رو از بین ببرید و مجددا اینکارو بکنید.
اینجا (http://barnamenevis.org/showthread.php?283970-%D9%85%D8%B4%DA%A9%D9%84-%D8%AF%D8%B1-Restore-%DA%A9%D8%B1%D8%AF%D9%86-%D9%81%D8%A7%DB%8C%D9%84-Backup-%D9%81%D9%88%D8%B1%DB%8C-%D9%81%D9%88%D8%B1%DB%8C) هم اگر ببینید کمکتون میکنه

amirdifraxe1
یک شنبه 09 مرداد 1390, 13:24 عصر
یعنی من الان تو برنامه ام این طوری قرار بدم ؟



Dim cmd as new sqlcommand("select spid from master..sysprocessess where dbid=db_id(GOLD)")

بعد از kill نمی تونم استفاده کنم چون باهاش کار نکردم چه کار کنم؟