如何在SQL Server 2005数据库之间传输存储过程

时间:2009-04-03 07:39:11

标签: sql sql-server-2005 deployment

我正在本地计算机上创建网站。我正在使用SQL Server 2005管理工作室。我需要将所有数据复制到目标服务器。目标服务器是SQL Server 2005.我的问题是

  1. 当我使用管理工作室的导入/导出数据时,这只复制表。
  2. 当我使用备份和恢复时,表和存储过程显示如下
  3. myuser.aspnet_application

    myuser.aspnet_Membership ...等 我需要像这样创建

    dbo.aspnet_application

    dbo.aspnet_Membership

    如何将存储过程和视图复制到目标服务器?

5 个答案:

答案 0 :(得分:6)

在SQL Server Management Studio中,导航到您的数据库。

右键单击它并选择“任务” - > “生成脚本”
“下一步”
从列表中选择您的数据库
“下一个” 选择“存储过程”“下一步”
“全选”“下一步”
“脚本到新的查询窗口”“下一步”
“完成”

给它一点时间。然后在完成时,在脚本的最顶部放置“use(yourdatabase)”

执行使用声明 执行整个脚本。

答案 1 :(得分:5)

如果这是一次性工作,您可以轻松编写脚本。

打开SQL Management Studio,然后浏览到数据库的Stored Procedures节点。如果对象资源管理器尚未打开,请打开它(单击F7)并选择要复制的所有存储过程。右键单击列表,然后选择Script Stored Procedure as - >删除和创建 - >到新的查询窗口。

这将为您提供一个脚本,如果它们存在,则删除这些过程,然后创建它们。

如果您获得了myuser架构,或者在脚本中使用了[databasename]语句,则可以通过执行以下操作来解决这些问题: 选择工具 - >菜单中的选项。导航到SQL Server查询资源管理器 - >编写脚本并将以下内容设置为false:“脚本USE”和“架构限定对象名称”。

您获得的脚本可以在新数据库上运行,并且应该创建您需要的所有存储过程。

答案 2 :(得分:1)

您还可以使用RedGate SQLCompareSQLDataCompare等工具在数据库之间轻松移动数据和对象

答案 3 :(得分:0)

看起来您正在使用ASP.NET成员资格提供程序。通过运行随.NET框架一起安装的工具aspnet_regsql.exe,可以轻松地重新创建ASP.NET提供程序使用的存储过程。

答案 4 :(得分:0)

尝试DBSourceTools。
http://dbsourcetools.codeplex.com
它的开源,并将脚本整个数据库
- 表,视图,过程和数据到磁盘,然后允许您通过部署目标重新创建该数据库 它专门用于帮助开发人员在源代码控制下获取数据库。