sql >> Databáze >  >> RDS >> PostgreSQL

Django ORM špatně čte sekvence PostgreSQL?

Django žádným způsobem neuchovává ani přímo nečte sekvenční hodnoty. Vysvětlil jsem to např. v této otázce:2088210/django-object-creation-and -postgres-sekvence .

Postgresql zvyšuje sekvenci, když se pokoušíte přidat řádek, i když výsledek operace není úspěšný (vyvolá chybu duplicitního klíče), inkrementace sekvence se nevrátí. Takže to je důvod, proč to funguje podruhé, když se pokusíte přidat řádek.

Nevím, proč vaše sekvence nejsou správně nastaveny, můžete zkontrolovat, jaká je hodnota sekvence před výpisem a po obnovení, a udělat totéž s max() pk tabulky? Možná je to chyba 8.1 s obnovením? Nevím. Čím jsem si jistý:není to Djangoova chyba.



  1. Problém s instalací mysqlclient přes pip

  2. Optimistická souběžnost s Entity Framework a MySQL

  3. Fluent NHibernate nemůže načíst MySql.Data z GAC v režimu ladění testu

  4. proč je mysqld umístěn na 4 místech v linuxovém systému?