oracle 数据库之间 表数据的 迁移

您所在的位置:网站首页 数据库两张表的数据怎么迁移 oracle 数据库之间 表数据的 迁移

oracle 数据库之间 表数据的 迁移

2024-07-16 01:08| 来源: 网络整理| 查看: 265

主要是 需要将 正式环境的数据库 和测试环境的数据库的 表 数据同步一下,方便测试。 这样的效果, 可以使用 数据库的 备份 , exp imp 等其他的方式, 可是这样的方式, 需要 在 电脑里面 安装 oracle 客户端, 本人比较懒。 所以 就使用这样的方式了。 其实 速度不慢, 而且 简单快速

-- 创建 连接 create database link dblink_newTest connect to bms identified by bms using '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = 10.12.21.81)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME =orcl) ) )'; -- SELECT * FROM HR_EFF_LEADER_HI@dblink_newTest 远程查询 其他库的 数据 --备份, 需要将 原来的表的数据 删除 (看具体情况) INSERT INTO HR_EFF_LEADER_HI SELECT * FROM HR_EFF_LEADER_HI@dblink_newTest

我测试过了 , 如果想 要 多表 的 话, 百度 一下 , 没有 解决的办法。。。反正目前我是不知道 有什么多表的方式。

我的想法是:

-- 多表 INSERT INTO HR_EFF_LEADER_HI,HR_EFF_LEADER SELECT * FROM HR_EFF_LEADER_HI,HR_EFF_LEADER@dblink_newTest -- 模糊查询表名 , 然后 循环 -- 将 对应的表的 内容 给 删除 -- 然后 执行 单表的 备份 即可。 select table_name from user_tables where table_name like '%HR_EFF_LEADER%'

因为单表 可以解决, 如果是 多表的话, 自己可以 写一个 数据库的函数, 模糊查询出来 或者 定义的函数 需要迁移的某些 表, 然后 循环 执行 单表的 上面的 数据迁移的方式即可。 或者 说 使用 程序 Java 或者其他语言也可以的。如果不需要 写 数据库 的自定义函数的话。

本人 从来没有 试过些 SQL 函数, 虽然看得懂别人的函数, 可是自己写,搞了半天 都 报语法错误, SQL的 函数 出错了,调试 很麻烦, 错误提示 很难理解 。 反正我是 使用 Java代码 写一个 方法 多表 执行的, 而且 可以 很方便 的 写 一些 自己想要的效果, 如果用SQL函数,头疼啊。。。DBA 或者大神 可以 自己 写SQL函数啊, 应该更快吧。。



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3