pezhvakco
یک شنبه 14 فروردین 1390, 19:45 عصر
سلام:
کد دستور زیر یه دیتا بیس از روی دیتابیس موجود می سازد ولی ستون شاخص (ID) جدول هایی که نوع این ستون آن ها شناسه (Identity ) است را نمی سازد (به دیتابیس تازه جا به جا نمی کند) .
(در جدول هایی که ستون شناسه دارند، همه ستون ها یه جز همین ستون زا می سازد )
CREATE PROCEDURE CreateDB_DB @dbName nvarchar(20) AS
BEGIN
declare @path nvarchar(400)
Declare @sql nvarchar(1000)
Set @path = ( SELECT SubString(filename, 1, CharIndex(N'DataBase1_Data.mdf', Lower(filename)) - 1)
FROM master..sysdatabases Where name = 'DataBase1')
Set @sql = ' BACKUP DATABASE DataBase1 TO DISK = ' + '''' + @path + 'DataBase1.bak' + '''' +
' RESTORE FILELISTONLY FROM DISK = ' + '''' + @path + 'DataBase1.bak' + '''' +
' RESTORE DATABASE ' + @dbName +
' FROM DISK = ' + '''' + @path + 'DataBase1.bak' + '''' +
' WITH MOVE ' + '''' + 'DataBase1_Data' + '''' + ' TO ' + '''' + @path + @dbName + '_Data.mdf' + '''' + ', ' +
' MOVE ' + '''' + 'DataBase1_Log' + '''' + ' TO ' + '''' + @Path + @dbName + '_Log.ldf' + ''''
exec sp_executesql @sql
END
GO
کد دستور زیر یه دیتا بیس از روی دیتابیس موجود می سازد ولی ستون شاخص (ID) جدول هایی که نوع این ستون آن ها شناسه (Identity ) است را نمی سازد (به دیتابیس تازه جا به جا نمی کند) .
(در جدول هایی که ستون شناسه دارند، همه ستون ها یه جز همین ستون زا می سازد )
CREATE PROCEDURE CreateDB_DB @dbName nvarchar(20) AS
BEGIN
declare @path nvarchar(400)
Declare @sql nvarchar(1000)
Set @path = ( SELECT SubString(filename, 1, CharIndex(N'DataBase1_Data.mdf', Lower(filename)) - 1)
FROM master..sysdatabases Where name = 'DataBase1')
Set @sql = ' BACKUP DATABASE DataBase1 TO DISK = ' + '''' + @path + 'DataBase1.bak' + '''' +
' RESTORE FILELISTONLY FROM DISK = ' + '''' + @path + 'DataBase1.bak' + '''' +
' RESTORE DATABASE ' + @dbName +
' FROM DISK = ' + '''' + @path + 'DataBase1.bak' + '''' +
' WITH MOVE ' + '''' + 'DataBase1_Data' + '''' + ' TO ' + '''' + @path + @dbName + '_Data.mdf' + '''' + ', ' +
' MOVE ' + '''' + 'DataBase1_Log' + '''' + ' TO ' + '''' + @Path + @dbName + '_Log.ldf' + ''''
exec sp_executesql @sql
END
GO