PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Klucz podstawowy z porządkowaniem ASC lub DESC?

Myślę, że byłoby to rozsądne, ponieważ semantycznie indeks w porządku rosnącym lub malejącym jest taki sam, ale PostgreSQL go nie obsługuje. Nie ma możliwości kontrolowania kolejności indeksu indeksu, który jest tworzony automatycznie w celu zabezpieczenia klucza podstawowego.

PostgreSQL nie pozwoli ci go utworzyć, tworząc indeks ręcznie jako UNIQUE indeksuj za pomocą DESC sortowanie, a następnie tworzenie zadeklarowanego PRIMARY KEY ograniczenie z nim za pomocą ALTER TABLE ... ADD CONSTRAINT ... PRIMARY KEY USING INDEX ... . Zawiedzie z:

ERROR:  index "foopk" does not have default sorting behavior

Nie wiem, dlaczego Pg tego wymaga. Przeszukanie kodu źródłowego powyższego błędu prawdopodobnie pozwoliłoby znaleźć odpowiedni komentarz.

Możesz uzyskać PRIMARY KEY podobne zachowanie bez metadanych ograniczeń, po prostu tworząc osobno unikalny indeks. To może być dla Ciebie w porządku.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Krotki nie są wstawiane kolejno do tabeli bazy danych?

  2. Jak sprawdzić, gdzie używana jest funkcja?

  3. SQLAlchemy z domyślną klasą danych nie wypełnia bazy danych postgres

  4. Dlaczego moje zadania Airflow są w kolejce, ale nie działają?

  5. Jak uzyskać aktualną datę w PostgreSQL