我正在尝试创建一种将数据从生产oracle数据库复制到我们的测试系统的自动方式。我们只想获取特定数据,因此不能只进行完整的数据库复制。我有所有SQL来获取数据,并且可以通过运行SQL并导出为insert语句然后在测试系统中运行它来在toad中执行它,但这很耗时,因为涉及大约25个表。
我想用python和cx_oracle来做。 我可以同时打开2个不同数据库的连接吗?所以我可以在一个中运行一个select并且结果构建一个insert并在另一个中运行或者我需要连接,运行select,disconnect并连接到另一个,运行insert并重复每个语句?多个连接和断开会导致数据库出现问题吗?取下一个生产数据库不会让我受欢迎....
我无法以任何方式链接数据库,复制需要对不同的数据重复,并且非常简单,非技术用户可以使用。
答案 0 :(得分:1)
是的,您可以同时打开多个连接。当然,请注意每个连接和光标。
您可以找到有用的CX-OracleTools,这是一个基于cx_oracle的脚本集合,用于处理Oracle数据库。有一个非常有趣的CopyData脚本。