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

Unikalny indeks na partycjach postgresql

To jest obecne zachowanie PostgreSQL. Unikalne indeksy dotyczą partycji, a nie całej tabeli. Masz kilka opcji:

  1. Jeśli to w ogóle możliwe, podziel tabele na partycje tak, aby zakresy kluczy były w jakiś sposób wykluczające. Innymi słowy, podziel na kluczowe dane. To najłatwiejsze i najbardziej bezproblemowe podejście. Tutaj partycjonujesz dane bez klucza, co stanowi problem.

  2. Jeśli to nie zadziała, możesz dodać wartość partycji po drugiej stronie złączenia. Pamiętaj, że w tym momencie potrzebujesz niestandardowych wyzwalaczy klawiszy funkcyjnych.

  3. Jeśli naprawdę potrzebujesz, możesz utworzyć zmaterializowany widok wszystkich identyfikatorów obsługiwany przez wyzwalacze i utworzyć na jego podstawie unikalny indeks.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Próbuję skopiować plik, ale pojawia się komunikat o błędzie

  2. Czy PostgreSQL przeprowadza optymalizację wydajności dla transakcji tylko do odczytu?

  3. postgresql - dodaj domyślną kolumnę logiczną do zestawu tabeli

  4. org.postgresql.util.PSQLException:próba połączenia nie powiodła się

  5. Jak używać podzapytania w django?