Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
SqLite nie ma żadnego specjalnego sposobu zbiorczego wstawiania danych. Aby uzyskać optymalną wydajność podczas wstawiania lub aktualizowania danych, upewnij się, że wykonasz następujące czynności:
- Użyj transakcji.
- Użyj ponownie tego samego sparametryzowanego polecenia. Kolejne wykonania będą korzystać z wcześniejszej kompilacji pierwszego.
using (var transaction = connection.BeginTransaction())
{
var command = connection.CreateCommand();
command.CommandText =
@"
INSERT INTO data
VALUES ($value)
";
var parameter = command.CreateParameter();
parameter.ParameterName = "$value";
command.Parameters.Add(parameter);
// Insert a lot of data
var random = new Random();
for (var i = 0; i < 150_000; i++)
{
parameter.Value = random.Next();
command.ExecuteNonQuery();
}
transaction.Commit();
}
Współpracuj z nami w serwisie GitHub
Źródło tej zawartości można znaleźć w witrynie GitHub, gdzie można również tworzyć i przeglądać problemy i żądania ściągnięcia. Więcej informacji znajdziesz w naszym przewodniku dla współtwórców.