在oracle中的不同服务器之间移动数据
发布时间:2021-03-19 09:42:33 所属栏目:站长百科 来源:网络整理
导读:我是Oracle的新手,我正在努力将特定数据从一台服务器上的数据库移动到另一台服务器上的数据库. 这两个DB具有相同的模式,但我想拉出其键引用的特定列,并将数据移动到其他服务器中.我想弄清楚对此最好的攻击方案是什么. 一种允许命令行的方法,我可以输入我想要
我是Oracle的新手,我正在努力将特定数据从一台服务器上的数据库移动到另一台服务器上的数据库. 这两个DB具有相同的模式,但我想拉出其键引用的特定列,并将数据移动到其他服务器中.我想弄清楚对此最好的攻击方案是什么. 一种允许命令行的方法,我可以输入我想要移动的数据的键.是否有可能用PLSQL脚本完成? 谢谢. 解决方法假设您可以在两个数据库之间创建网络连接,最简单的选择是在它们之间创建数据库链接,即CREATE DATABASE LINK to_b CONNECT TO username_on_b IDENTIFIED BY password USING 'tns_alias_for_b' 然后,您可以使用该数据库链接查询数据库B中的数据,即 INSERT INTO table_name( list_of_columns ) SELECT list_of_columns FROM table_name@to_b WHERE primary_key_value = <<some value>>; 这可以是直接的SQL语句,PL / SQL过程的一部分,也可以是SQL * Plus脚本的一部分.一个PL / SQL过程 CREATE OR REPLACE PROCEDURE move_row_from_b( p_key_value IN table_name.primary_key%type ) AS BEGIN INSERT INTO table_name( list_of_columns ) SELECT list_of_columns FROM table_name@to_b WHERE primary_key_value = p_key_value; END move_row_from_b; 可以通过SQL * Plus中的EXEC或匿名PL / SQL块调用 SQL> exec move_row_from_b( 23 ); BEGIN move_row_from_b( 23 ); END; 或者您可以编写SQL * Plus脚本 variable key_value number; accept key_value prompt 'Enter key: ' INSERT INTO table_name( list_of_columns ) SELECT list_of_columns FROM table_name@to_b WHERE primary_key_value = :key_value; (编辑:晋中站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |