sql server 主机上有一个视图,它有大约 100 列,每 4 小时大约有 40000 条新记录插入其中。我使用 netbeans 编写了一个 java 应用程序,它首先从 SQL Server 主机读取数据并将其插入到不同主机上的 Oracle 数据库表中。
阅读时间很短,从不超过 20 秒,但插入有时需要超过 10 分钟!我不能使用批处理,因为如果发生异常,我需要继续插入,但是如果我使用批处理,它将在第一个异常后终止。
我怎样才能使这个过程更快?
sql server 主机上有一个视图,它有大约 100 列,每 4 小时大约有 40000 条新记录插入其中。我使用 netbeans 编写了一个 java 应用程序,它首先从 SQL Server 主机读取数据并将其插入到不同主机上的 Oracle 数据库表中。
阅读时间很短,从不超过 20 秒,但插入有时需要超过 10 分钟!我不能使用批处理,因为如果发生异常,我需要继续插入,但是如果我使用批处理,它将在第一个异常后终止。
我怎样才能使这个过程更快?
您可以在 Oracle 中轻松使用批量处理。只需保存异常。当您的批量操作完成并且至少有 1 个异常时,会引发一个异常,让您有机会处理它们。
有关解释和示例,请参阅Morgans Library向下滚动到异常。