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

Mohu použít VARCHAR jako PRIMÁRNÍ KLÍČ?

Samozřejmě můžete, v tom smyslu, že vám to vaše RDBMS umožní. Odpověď na otázku, zda měl/a byste dělat to je však jiné:ve většině situací by hodnoty, které mají význam mimo váš databázový systém, neměly být vybrán jako primární klíč.

Pokud víte, že hodnota je v systému, který modelujete, jedinečná, je vhodné do tabulky přidat jedinečný index nebo jedinečné omezení. Vaším primárním klíčem by však obecně měla být nějaká "bezvýznamná" hodnota, jako je například automaticky navýšené číslo nebo GUID.

Důvod je jednoduchý:chyby při zadávání dat a občasné změny věcí, které se zdají být neměnné, se stávají. Je mnohem těžší je opravit u hodnot, které se používají jako primární klíče.



  1. Importovat XML s obsahem určeným jako atributy do tabulky MySQL?

  2. Příklady ASCII() – MySQL

  3. Správné použití php mysqli autocommit a rollback

  4. Jaký je rozdíl mezi VARCHAR a CHAR?