Member 11856456 Ответов: 1

Как я могу разделить стол более эффективно


Я пытаюсь вставить строки между таблицами данных. Однако то, как я это делаю сейчас, очень неэффективно, так как для завершения процесса требуется много времени и памяти.

вот пример того, как я использую свой код:

For Each row As DataRow In temptable.Rows
Insert statement
select ID statement- for each iteration to show the number of rows has changed
5 more insert statements with the ID column number being used in the individual_ID column of each table.
Next


Я разбиваю таблицы на основе их столбцов. Я использую Individual_ID в каждой таблице, так что соответствующие записи также будут выбраны.

Что я хочу знать, так это могу ли я сделать что-то подобное с bulk copy, где я могу импортировать в каждую таблицу и вставлять Individual_ID по мере добавления строк, или есть другой способ?

Что я уже пробовал:

Я попытался исключить операторы insert с помощью
if dt.columns.contains then

заявление. Это действительно улучшает время, однако оно все еще медленное.

1 Ответов

Рейтинг:
0

Member 11856456

Единственная проблема с этим заключается в том, что он требует, чтобы источник уже имел идентичность. То, что я пытаюсь сделать, когда я импортирую информацию в таблицы, они будут использовать столбец identity моей основной таблицы. Это будет вставка 1 к 1. Таким образом, если новая строка в столбце основной таблицы равна 4000, то individual_ID, соответствующий другим таблицам, должен быть равен 4000. Затем следующий импорт 4001 и так далее.

В настоящее время только мои целевые таблицы имеют столбцы ID и individual_ID. моя таблица под названием профиль-это основная таблица, из которой будут ссылаться все таблицы. как я могу поместить значение идентификатора в каждую таблицу, в которую оно должно быть вставлено?