Foxtable(狐表)用户栏目专家坐堂 → 如何复制视图储存过程等到一个新的数据库?


  共有2129人关注过本帖树形打印复制链接

主题:如何复制视图储存过程等到一个新的数据库?

帅哥哟,离线,有人找我吗?
happyft
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1926 积分:17391 威望:0 精华:0 注册:2014/7/29 19:09:00
如何复制视图储存过程等到一个新的数据库?  发帖心情 Post By:2017/4/26 16:27:00 [只看该作者]

在一个数据库中已经建立好的视图,储存过程等 ,现在要将其批量复制到另一个数据库要怎么办?

原来的数据库名是AA,数据库中的视图,储存过程的是前面都有一句, use AA   当复制到数据库BB 时这些地方全部都会自动变为use BB 吧?

谢谢!


 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/4/26 16:32:00 [只看该作者]

导出脚本,导入脚本

 

-------------

 

打开SQL2008 按F7,调出“对象资源管理器详细信息”,在左侧选中“存储过程“或”Stored Procedures“目录,到右侧窗口,全选所有的要导入的sp,在选中的sp上鼠标右键。”生成存储过程脚本为”->“Drop和Create到”->“File”,这样就可以导出所有sp,将保存后的file到产品环境下运行一下就可以了。

 

-----------------

 

选中一个数据库实例,右键“所有任务”--“生成sql脚本”
“常规”--“全部显示”--选中全部存储过程 复选框

 


 回到顶部
帅哥哟,离线,有人找我吗?
HappyFt
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1926 积分:17391 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2017/5/25 11:35:00 [只看该作者]

视图,储存过程已经可以了,如果很多表中有触发器,这些触发器可以批量复制到其他数据库中吗(表的结构都是一样的,但已有数据,不能破坏数据)

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/25 13:03:00 [只看该作者]

数据库上点右键 任务 生成脚本,然后按提示一步一步就能导出了(表、视图、索引、存储过程、触发器)都能导出


 回到顶部
帅哥哟,离线,有人找我吗?
HappyFt
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1926 积分:17391 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2017/5/25 18:28:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170525181609.png
图片点击可在新窗口打开查看

这个导出脚本中选择表生成的脚本是包括新建表的,对于新数据库中生成表是没问题,
现在的情况是两个数据库A和B,原来A中已经存在表及数据了,只是原来表都没有触发器,现在要将数据库B(其表与A相同)中的所有触发器复制到A中,仅复制触发器而已,如果按表导出的脚本执行会提示数据中对像已经存在,不会每个表单独打开一个一个复制创建吧?

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/25 18:30:00 [只看该作者]

 下一步、下一步,那里的选项有你需要的。

 回到顶部
帅哥哟,离线,有人找我吗?
HappyFt
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1926 积分:17391 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2017/5/25 18:51:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170525181609.png
图片点击可在新窗口打开查看

没弄明白,这些高级选项选了几个也没对,其他地方没有了啊,因为目标数据库中是用了几年的数据,怕弄错了,全部没了就完了

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/25 21:25:00 [只看该作者]

 如果你设置【编写触发器脚本】-> true,那么,在最后生成的脚本里面,就有触发器的脚本了,你把其余的删除,不就是只有触发器?

 回到顶部
帅哥哟,离线,有人找我吗?
HappyFt
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:八尾狐 帖子:1926 积分:17391 威望:0 精华:0 注册:2014/7/29 19:09:00
  发帖心情 Post By:2017/5/25 22:20:00 [只看该作者]


图片点击可在新窗口打开查看此主题相关图片如下:qq截图20170525221524.jpg
图片点击可在新窗口打开查看


只是触发器那个选为true,其他的都是false,结果还是不行啊

打开这个脚本里面还是Create Table的内容,表原来已经有了,不建表,只要增加从另外一个数据库导出的每个表的触发器(表结构完全相同)

 回到顶部
帅哥哟,离线,有人找我吗?
有点色
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:13837 积分:69650 威望:0 精华:0 注册:2016/11/1 14:42:00
  发帖心情 Post By:2017/5/25 22:25:00 [只看该作者]

删除create table的代码不行?只能半自动的。

 回到顶部
总数 12 1 2 下一页