sql >> Databáze >  >> RDS >> Oracle

Jak implementovat bez mezer, uživatelsky přívětivá ID v NHibernate?

Jednou z možností by bylo zachovat tabulku klíčů, která jednoduše ukládá rostoucí hodnotu. To může způsobit několik problémů, jmenovitě možné problémy se zamykáním a také další zásahy do databáze.

Další možností může být upřesnění toho, co máte na mysli pod pojmem "Uživatelsky přívětivé ID". To by mohlo sestávat z kombinace data/času a sekvence specifické pro zákazníka (nebo včetně zákaznického ID). Také vaše ID objednávky nemusí nutně být skutečným klíčem na stole. Nic neříká, že nemůžete použít náhradní klíč se samostatným sloupcem „vypočítaný“, který představuje ID objednávky.

Pointa je, že to zní, jako byste chtěli použít náhradní klíč, ale měli byste výhody přirozeného klíče. Může být velmi obtížné mít to v obou směrech a hodně záleží na tom, jak skutečně plánujete data používat, jak uživatelé data interpretují a jaké jsou osobní preference.




  1. Jak mohu vybrat nejdelší textové pole při použití GROUP BY v mysql, a la MAX()?

  2. Výhoda použití pohledů v MySQL

  3. Jaký je rozdíl mezi BIT a TINYINT v MySQL?

  4. Postgres SQL Query pro shrnutí dat o chybách