1

我的当前项目已被要求将我们现有的 Oracle 数据库转换为 Microsoft SQL 数据库。

我对大多数数据都没有问题,但我遇到了特定列的问题。

我有一个带有 CLOB 列和大约 10,000,000 个条目的表。

我尝试使用更新查询生成脚本:

UPDATE DATABASE.TABLE SET CLOBCOLUMN = (CLOBCOLUMN + 'First part');
UPDATE DATABASE.TABLE SET CLOBCOLUMN = (CLOBCOLUMN + 'Added part');

最后,我生成了大约 100GB 的脚本来执行。

我尝试使用 sqlcmd 执行这​​些脚本:

echo off
set ScriptDir=<Directory with all scripts>
set MSQLAccount=<Connexion account>

FOR /L %%G IN (1,1,<last script number>) DO (
   sqlcmd -S %MSQLAccount% -i %ScriptDir%\script_%%G.sql 
)

pause

此解决方案有效,但需要无限时间:5 分钟内仅更新 14 个条目 ==> 大约需要 8 年才能完成。

是否有另一种解决方案可以帮助我将这些 CLOB 值从 Oracle 添加到 Microsoft SQL varchar(max) 列中?

先感谢您。

4

0 回答 0