Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Poznámka
Sekvence jsou funkce, která je obvykle podporována pouze relačními databázemi. Pokud používáte nerelační databázi, jako je Azure Cosmos DB, projděte si dokumentaci k databázi o generování jedinečných hodnot.
Sekvence generuje jedinečné sekvenční číselné hodnoty v databázi. Sekvence nejsou přidružené ke konkrétní tabulce a více tabulek lze nastavit tak, aby nakreslily hodnoty ze stejné sekvence.
Základní použití
V modelu můžete nastavit posloupnost a pak ji použít k vygenerování hodnot pro vlastnosti:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.HasSequence<int>("OrderNumbers");
modelBuilder.Entity<Order>()
.Property(o => o.OrderNo)
.HasDefaultValueSql("NEXT VALUE FOR OrderNumbers");
}
Všimněte si, že konkrétní SQL použitý k vygenerování hodnoty z posloupnosti je specifický pro databázi; Výše uvedený příklad funguje na SQL Serveru, ale v jiných databázích selže. Další informace najdete v dokumentaci ke konkrétní databázi.
Konfigurace nastavení sekvence
Můžete také nakonfigurovat další aspekty sekvence, jako je jeho schéma, počáteční hodnota, přírůstek atd.:
protected override void OnModelCreating(ModelBuilder modelBuilder)
{
modelBuilder.HasSequence<int>("OrderNumbers", schema: "shared")
.StartsAt(1000)
.IncrementsBy(5);
}