一部のデータ読み込みスクリプトでこのような問題が発生しました。スクリプトの形式は次のとおりです。
insert into table(a,b,c) values((a0,b0,c0),(a1,b1,c1),...(a50000,b50000,c50000));
これらの非常に長いステートメントが 5 つから数十個含まれていました。この形式は、データをインポートしたいシステムで認識できませんでした。それにはフォームが必要でした:
insert into table(a,b,c) values(a0,b0,c0);
insert into table(a,b,c) values(a1,b1,c1);
...
insert into table(a,b,c) values(a50000,b50000,c50000);
小さいスクリプトでも数 MB で、テキスト エディターに読み込むのに最大 1 時間かかりました。したがって、これらの変更を標準のテキスト エディターで行うことは問題外でした。最初の形式を読み取り、2 番目の形式で構成されるテキスト ファイルを作成する簡単な Java アプリを作成しました。最大のスクリプトでさえ、合計で 20 秒もかかりませんでした。はい、それは分ではなく秒です。それは、多くのデータがテキストで引用されている場合でも、パーサーを引用認識にする必要があったためです。
独自のアプリ (Java、C#、Perl など) を作成して、同様のことを行うことができます。必要なデータベースに関連する行だけを別のスクリプト ファイルに書き込みます。アプリを作成してテストするには数時間または数日かかりますが、非常に大きなファイルを処理するテキスト エディターを調査するだけでも、実際には機能しないことを確認するだけでも、おそらくそれ以上の時間がかかります。