Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Jak wymusić unikatowość w wielu tabelach

Masz rację – #1 to najlepsza opcja.
Zgoda, na pierwszy rzut oka zakwestionowałbym to (ze względu na skróty), ale znajomość reguły biznesowej, aby zapewnić, że pracownik jest powiązany tylko z jedną firmą – ma to sens.

Dodatkowo miałbym klucz obcy powiązujący identyfikator firmy w tabeli pracowników z identyfikatorem firmy w tabeli biura. W przeciwnym razie pozwalasz, aby pracownik był powiązany z firmą bez biura. Chyba że jest to do przyjęcia...

Wyzwalacze to ostateczność, jeśli relacji nie da się wykazać w modelu danych, a obsługa logiki z aplikacji oznacza, że ​​logika jest scentralizowana - nie ma szans na wystąpienie złych danych, chyba że ktoś zrzuci ograniczenia (co oznacza, że ​​masz większe problemy ).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Dlaczego używanie przygotowanej instrukcji mysql jest bezpieczniejsze niż używanie typowych funkcji ucieczki?

  2. BŁĄD 1045 (28000):Odmowa dostępu dla użytkownika „root”@„localhost” (przy użyciu hasła:NIE)

  3. Połącz się z wieloma bazami danych w CakePHP 3

  4. Maksymalne użycie pamięci MySQL

  5. Zapytanie MySQL w PHP gdzie x =$zmienna