PDA

View Full Version : در موقع بازیابی اطلاعات(database sql server) در محیط vb6 پیغام زیر را میدهد.



alivafadarpour
سه شنبه 04 دی 1386, 14:50 عصر
در موقع بازیابی اطلاعات(database sql server) در محیط vb6 پیغام زیر را میدهد.
لطفا راهنمایی کنید.
"Excusive access could not be obtained because the database in use"

reza_rad
سه شنبه 04 دی 1386, 15:20 عصر
این به این دلیل هست که کانکشن ها به دیتابیس باید قطع بشن قبل از فرایند restore کردن.
از این اسکریپت می تونید برای اینکار استفاده کنید:


--Make Database to single user Mode
ALTER DATABASE YourDB
SET SINGLE_USER WITH ROLLBACK IMMEDIATE

--Restore Database
RESTORE DATABASE YourDB
FROM DISK = 'D:BackUpYourBaackUpFile.bak'
WITH MOVE 'YourMDFLogicalName' TO 'D:DataYourMDFFile.mdf',
MOVE 'YourLDFLogicalName' TO 'D:DataYourLDFFile.mdf'

--If there is no error in statement before database will be in multiuser mode.
--If error occurs please execute following command it will convert database in multi user.
ALTER DATABASE YourDB SET MULTI_USER
GO

منبع:
http://blog.sqlauthority.com/2007/02/25/sql-server-restore-database-backup-using-sql-script-t-sql/

alivafadarpour
چهارشنبه 05 دی 1386, 09:24 صبح
دوست عزیزدر صورت ممکن با یک مثال برایم بفرستید. ( c:\acc86.mdf,c:\acc86.bak)

database , backup آن هر در در درایو c می باشند.

reza_rad
چهارشنبه 05 دی 1386, 09:36 صبح
دوست عزیزدر صورت ممکن با یک مثال برایم بفرستید.
مثال رو درپست قبلی گذاشتم.یه کم دقت کنید راهکار رو متوجه میشید.

alivafadarpour
چهارشنبه 05 دی 1386, 11:27 صبح
دوست عزیز نتونستم. در صورت ممکن با database, backup فوق برایم بفرستید.خیلی خیلی ممنون از لطفتان .