У меня есть таблица с 100 K записей. Я пишу файл XML на основе этого набора записей. Мне нужно написать 100 записей в файл одновременно. Поэтому у меня будет 1000 отдельных файлов.
В настоящее время для ограничения количества записей, записываемых в файл, я использую
SELECT * FROM TABLE WHERE ROWNUM < 100;
Получает 100 записей и записывает их в файл. Когда я сделаю это снова, он получит те же 100 записей еще раз. Есть ли способ удалить записи, которые он уже написал?
Я думал о создании таблицы, в которую я буду вставлять первичный ключ каждой записи, которая была записана в файл.
Так что я тогда сделаю
SELECT * FROM TABLE WHERE ROWNUM < 100 AND PRIMARYKEY NOT IN (SELECT PRIMARYKEY FROM ANOTHERTABLE);
Я использую Oracle 9i и консольное приложение на c #. Я использую ODP .NET, чтобы установить соединение.
Есть ли другой способ сделать этот процесс?