sql >> Databáze >  >> RDS >> Mysql

Jak důležitá jsou omezení jako NOT NULL a FOREIGN KEY, pokud budu vždy ovládat svůj databázový vstup pomocí PHP?

Zúčastníte se dělat chyby s PHP, 100% zaručeno. PHP je procedurální. To, co chcete, jsou deklarativní omezení. Chcete celému zásobníku říci:"Toto jsou omezení na data a tato omezení nelze porušit." S "Krok 1 ... Krok 2 ... Krok 3 ... Krok 432 ... ", jako svou metodu vynucení omezení na data, se nechcete moc motat, protože

  • popletete se
  • když to později změníte, zapomenete, co jste udělali teď
  • nikdo jiný nebude znát všechna tato implicitní omezení, jako je znáte nyní, a to včetně vašeho budoucího já
  • K řádnému vynucení omezení je potřeba hodně kódu – databázový server již tento kód má, ale jste připraveni jej napsat?

Otázka by měla ve skutečnosti znít:"Proč bych měl používat PHP k vynucení těchto omezení, když to mohu udělat pouze s MySQL?"



  1. Oracle dotaz pro převod více sloupců do jednoho sloupce

  2. MySQL 5.6 DATETIME nepřijímá milisekundy/mikrosekundy

  3. com.microsoft.sqlserver.jdbc.SQLServerException:Připojení TCP/IP k hostiteli localhost, port 1433 selhalo

  4. Logování .NET Core do PostgreSQL DB pomocí NLog