Sql wstawić wydajność zapytania

Chcę wstawić n rekordów do jednej tabeli. Może być wielu jednoczesnych użytkowników i mogą wstawiać / aktualizować / wybierać dane z tej tabeli. Jaki jest lepszy sposób wstawienia do takiej tabeli: 1000 rekordów:

Wyślij pojedyncze zapytanie sql do bazy danych z wieloma wstawkami. Oszczędza to serwerowi wywołań bazy danych, ale (nie jestem pewien) blokuje tabelę do momentu zakończenia wstawiania i wszystkie inne zapytania do tej tabeli będą czekać.Podziel 1000 rekordów w niektórych kawałkach i wyślij je w wielu zapytaniach sql. Pozwala to na wykonywanie innych zapytań na stole, ale spędzanie czasu na serwerze na wywołaniach bazy danych.

Czy to zależy od czegoś, czy jest jeden sposób, który zawsze jest optymalny? Czy zależy to od tego, czy transakcje są używane, czy nie, podczas wstawiania danych? Czy są inne lepsze sposoby wykonania takiej wkładki?

Baza danych, której używam, to MS SQL, ale jest interesująca, jak działa w innych bazach danych, takich jak Oracle.

questionAnswers(4)

yourAnswerToTheQuestion