這篇文章主要為大家詳細介紹了sqlserver 複制表 複制資料庫存儲過程的方法,具有一定的參考價值,可以用來參考一下。
感興趣的小夥伴,下面一起跟随512筆記的小編兩巴掌來看看吧!在目前的工作中需要解決複制整個SqlServer資料庫的問題,複制的内容包括資料庫大綱、資料庫中的存儲過程、函數、表結構、主外鍵關系以及表中的所有資料等,也就是說copy版本與原資料庫一模一樣。經過一段時間的摸索,找到的一個比較簡單的解決方案是:
(1)在複制資料庫之前,先備份該資料庫到檔案。
(2)依據備份檔案建立新的資料庫,并Restore即可。
備份資料庫可用如下Sql語句:
string.Format("backup database {0} to disk = '{1}';", dbName, bakFilePath) 依據備份檔案建立并Restore新資料庫可以使用如下存儲過程實作:
代碼如下:
CREATE PROCEDURE CopyDB
(
@newDbName varchar(50), --新資料庫名稱
@dbDataDirPath varchar(100), --資料庫安裝的Data檔案夾目錄路徑
@soureDbName varchar(100), --源資料庫名稱
@soureBackupFilePATH varchar(100)--源資料庫備份檔案的路徑
)
AS
declare @sql varchar(3000)
set @sql='
create database '[email protected]+'
ON
(
name='[email protected]+'_Data,
filename='''[email protected][email protected]+'_Data.mdf'',
SIZE = 10,
FILEGROWTH = 15%
)
LOG ON
(
name='''[email protected]+'_Log'',
filename='''[email protected][email protected]+'_Log.LDF'',
SIZE = 5MB,
MAXSIZE = 25MB,
FILEGROWTH = 5MB
)
--開始還原
RESTORE DATABASE '[email protected]+' from disk='''[email protected]+''' WITH REPLACE
'
exec(@sql)
GO
注:關于sqlserver 複制表 複制資料庫存儲過程的方法的内容就先介紹到這裡,更多相關文章的可以留意512筆記的其他資訊。
關鍵詞:SQL Server