我可以相信 Django 的bulk_create来维持秩序吗?



当我做这样的事情时:

model_list = [Model(name = 'First'), Model(name = 'Second'), Model(name = 'Third')]
Model.objects.bulk_create(model_list)

我可以相信它们将按相同的顺序创建吗?

那是:

pk1 = Model.objects.get(name = 'First').pk
pk2 = Model.objects.get(name = 'Second').pk
pk3 = Model.objects.get(name = 'Third').pk
(pk3 > pk2) and (pk2 > pk1)
我认为

你可以。

model_list = [Model(name = 'First'),
              Model(name = 'Second'),
              Model(name = 'Third')]
Model.objects.bulk_create(model_list)

此代码将转换为以下 SQL:

INSERT INTO app_model (name) VALUES ('First'), ('Second'), ('Third')

常规 SQL 服务器不太可能以不同的顺序插入这些行。

最新更新