項目操作過程中,利用Navicat操作SQL Server2008R2數據備份,結果發現數據丟失了很多,不得不先對數據丟失部分進行差異對比,然后再重新輸入。
1、利用Navicat導出的數據格式為sql格式,可以直接還原導入;
2、利用SQL Server management Studio導出的數據格式為bak格式,導入navicat測試。
在navicat中新建數據庫,這里新建名為:1111數據庫
點擊數據庫:1111,找到SQL Server備份,然后在空白頁--鼠標右鍵--從文件還原
先在常規中選擇,還原到數據庫:1111,然后選擇--添加設備--找到電腦端.bak文件。
設置好常規操作后,選擇高級設置
會出現以下問題請參考:
對數據庫備份進行還原時遇到“sql System.Data.SqlClient.SqlError: 無法覆蓋文件 'C:\Program Files\Microsoft SQL Server\MSSQL\data\*****.MDF'。數據庫 '****' 正在使用該文件”的問題。
將該文件拷貝出來,放到其他位置,然后還原數據庫文件到,將這兩個文件關聯起來即可。
點擊SQL預覽亦可以用代碼操作:
RESTORE DATABASE [1111] FROM DISK = N'C:\Users\LinQL\Desktop\****.bak' WITH FILE = 1, MOVE N'*****' TO N'C:\Users\LinQL\Desktop\sql\*****.mdf', MOVE N'*****_log' TO N'C:\Users\LinQL\Desktop\sql\*****_log.ldf', REPLACE, RECOVERY, STATS = 5;
完成后,點擊還原即可。