col_idが主キーだと思います。したがって、更新ステートメントで
EXECUTE IMMEDIATE 'UPDATE ' || dest || ' SET COUNTRY_CODE = :v1 WHERE col_id = :v2'
USING l_vc_CountryCode, l_vc_ColId;
常に最大で1行を更新しているため、条件
SQL%ROWCOUNT > 1
決して真ではありません(1は> 1ではありません)
したがって、プロシージャに他のcommitステートメントがない場合、それらの更新をコミットすることはありません。
ちなみに、これの目的は何ですか
if SQL%ROWCOUNT > 1 THEN
inserts := inserts + 1;
counter := counter + 1;
IF counter > 500 THEN
counter := 0;
COMMIT;
END IF;
END IF;
仕事の最後にコミットしてみませんか?