sqlserver 复制表 复制数据库存储过程的方法

 更新时间:2008年02月19日 23:06:28   作者:  
复制整个SqlServer数据库的问题的比较好的方法
在目前的工作中需要解决复制整个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 '+@newDbName+'  
ON  
(  
  name='+@soureDbName+'_Data,  
  filename='''+@dbDataDirPath+@newDbName+'_Data.mdf'',  
  SIZE = 10,  
  FILEGROWTH = 15%  
)  
LOG ON  
(  
  name='''+@soureDbName+'_Log'',  
  filename='''+@dbDataDirPath+@newDbName+'_Log.LDF'',  
  SIZE = 5MB,  
  MAXSIZE = 25MB,  
  FILEGROWTH = 5MB  
)  
--开始还原  
RESTORE DATABASE '+@newDbName+' from disk='''+@soureBackupFilePATH+''' WITH REPLACE  
'  
exec(@sql)  
GO

相关文章

  • SQL Server字符串切割函数

    SQL Server字符串切割函数

    创建用户定义函数,它是返回值的已保存的 Transact-SQL 例程。用户定义函数不能用于执行一组修改全局数据库状态的操作。与系统函数一样,用户定义函数可以从查询中唤醒调用。也可以像存储过程一样,通过 EXECUTE 语句执行
    2012-07-07
  • SQL语句的执行原理分析

    SQL语句的执行原理分析

    SQL语句的执行原理分析,想提高执行效率的朋友可以参考下。
    2012-01-01
  • sql 截取域名的问题

    sql 截取域名的问题

    sql 截取域名的几种方法总结,需要的朋友可以参考一下
    2013-03-03
  • SQL Server存储过程的基础说明

    SQL Server存储过程的基础说明

    创建存储过程,存储过程是保存起来的可以接受和返回用户提供的参数的 Transact-SQL 语句的集合。
    2008-10-10
  • SQL SERVER2012中新增函数之字符串函数CONCAT详解

    SQL SERVER2012中新增函数之字符串函数CONCAT详解

    SQL Server 2012有一个新函数,就是CONCAT函数,连接字符串非它莫属。比如在它出现之前,连接字符串是使用"+"来连接,如遇上NULL,还得设置参数与配置,不然连接出来的结果将会是一个NULL。本文就介绍了关于SQL SERVER 2012中CONCAT函数的相关资料,需要的朋友可以参考。
    2017-03-03
  • SQLSERVER数据库升级脚本图文步骤

    SQLSERVER数据库升级脚本图文步骤

    公司的系统需要从1.0升级到1.1,包括所有正在使用我们公司产品的客户,因为公司的客户遍布全国,就写了一个SQLSERVER数据库远程升级脚本图文步骤,大家参考使用吧
    2013-11-11
  • 教你怎么使用sql游标实例分享

    教你怎么使用sql游标实例分享

    教你怎么使用sql游标实例分享,需要的朋友参考下
    2012-06-06
  • SQL Server数据汇总五招轻松搞定

    SQL Server数据汇总五招轻松搞定

    有些时候你想让SQL Server 返回一个聚集结果集合,而不是一个详细的结果集。SQL Server的GROUPBY子句,为你提供了一种聚合SQL Server数据的方式。GROUPBY子句允许你在一列或多列数据甚至是表达式上进行分组操作,在这篇文章中,我将讨论如何使用GROUPBY子句来汇总数据。
    2015-09-09
  • 分组后分组合计以及总计SQL语句(稍微整理了一下)

    分组后分组合计以及总计SQL语句(稍微整理了一下)

    这篇文章主要介绍了分组后分组合计以及总计SQL语句,需要的朋友可以参考下
    2017-02-02
  • SQL Server的存储过程详解

    SQL Server的存储过程详解

    这篇文章主要为大家介绍了SQLServer的存储过程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助
    2022-01-01

最新评论