2016-07-06 2 views
0

Мой вопрос в том, возможна ли вставка вставки при вставке строк в таблицу? Я знаю, что иногда мы можем ограничить объемную вставку, но я слышал, что если sql-сервер не сможет выполнять массовую вставку, это не произойдет.SQL Server и объемная вставка - когда это произойдет

И когда это может произойти, и когда этого не произойдет?

Когда мы загружаем данные по SSIS и, например, Компонент OLE DB Destination имеет возможность быстрой загрузки, и, проверяя журнал транзакций, мы видим, что происходит массовая вставка (журнал транзакций растет очень мало), но иногда этого не происходит. Зачем? Каковы условия для объемной вставки?

Я проверяю это на SQL Server 2012, выпуск разработчика.

+0

В чем проблема/вопрос ... это почему размер журнала изменяется или что-то еще размер журнала зависит от размера данных и других действий на сервере .. –

ответ

2

Когда вы делаете объемную вставку, она всегда будет делать объемную вставку. Это может быть ошибка, но она не может «не случиться». На самом деле речь идет о том, будет ли объемная вставка минимально зарегистрирована. Хотя понятия связаны друг с другом, это совсем другой вопрос. Я не буду повторять здесь требования к минимально регистрируемым операциям. Вместо этого, я призываю вас прочитать очень хорошая документация уже существующих на тему:

Имейте в виду, что существуют некоторые различия между SQL Server 2008, 2012, 2014 и 2016 годах, поскольку это была область разработки, а некоторые предыдущие ограничения были отменены в более поздних версиях. Прочтите статьи в ссылках выше. последняя связанная статья, Руководство по эффективности загрузки данных: ссылка на эту тему.

+0

Огромное вам спасибо! Теперь я понимаю, что такое «объемная» вставка. Итак, я предполагаю, что, когда выполняются условия для минимального ведения журнала, чем это произойдет, даже если нет явного указания на то, что «DO BULK INSERT»? Конечно, я буду читать документацию, спасибо! – vBB

Смежные вопросы