Maximální hodnota pro bigint je 9,223,372,036,854,775,807 . Pokud byste se dostali na 8 číslic za den, stále byste potřebovali 10 dní, abyste dosáhli maxima. To je asi 25 milionů let.
Za předpokladu, že stále chcete obnovit sloupec, první otázka, kterou mám, je:je pořadí řádků důležité? Znamená to, že spoléháte na skutečnost, že řada 1000 je před 1100, řekněme v chronologickém nebo jinak absolutním řazení? Pokud ne, je to snadné:sloupec smažte a znovu přidejte. Ahoj, nové hodnoty.
Pokud potřebujete zachovat pořadí, budete to muset udělat trochu opatrněji:
- Zamkněte stůl;
- Změňte typ tak, aby se již nezvyšoval automaticky;
- Vytvořte nový sloupec. Nejlépe bude, když jej prozatím ponecháte bez indexů, protože aktualizace indexu zpomalí vkládání;
- Hodnoty ve druhém naplňte smyčkou nějakého druhu zvyšující počítadlo (jako je trik SQL Server rownum) a pořadí vložení tak, aby odpovídalo původnímu pořadí;
- Nahradit starý sloupec novým;
- Obnovte automatické zvyšování a stav primárního klíče.