Snake, to priraďovanie ID jednotlivým riadkom nemeň! Tak je to schválne a tak je to správne. Je to kvôli správnym väzbám medzi viacerými tabuľkami.
Predstav si situáciu, že máš 2 tabuľky, napr. kategórie a produky, pričom každý produkt patrí do nejakej kategórie:
Kód:
Kategórie:
ID | Nazov
---+--------------
1 | Osobné autá
2 | Pickup-y
3 | Dodávky
4 | Nákladné autá
5 | Autobusy
Produkty:
ID | Kategoria | Nazov
---+-----------+--------------
1 | 1 | Audi A3
2 | 1 | BMW 330d
3 | 1 | Ford Focus
4 | 2 | Toyota Hilux
5 | 2 | Nissan Navarra
6 | 3 | Ford Transit
7 | 3 | Fiat Ducato
8 | 4 | MAN TGL
9 | 4 | Mercedes Actros
10 | 5 | Sor 9.5
No a takto môžeš zobraziť všetky záznamy:
Kód:
SELECT *
FROM Kategorie As K
LEFT JOIN Produkty As P ON (K.id = P.kategoria)
Teraz si predstav situáciu, že vymažeš kategóriu
Dodávky (len kategóriu, produkty necháš tak) a chceš vložiť novú kategóriu, napr.
Športové Autá a do nej nejaké produkty (Porsche 911, Lamborghini Diablo, K1 Attack0). Ak by ID novej kategórie nebolo 6, ale rovnaké, ako ID predtým vymazanej kategórie (teda 3), odrazu by platilo, že medzi športové autá by sa dostali dodávky Ford Transit a Fiat Ducato!
To čo som sa týmto príkladom snažil povedať, je jednoduchý fakt, že ID má byť pre každý vložený riadok unikátne, bez ohľadu na to, aké ID sa predtým v tabuľke vyskytovali. Niekedy presne nevieš, aké sú závislosti medzi tabuľkami a keď aj vieš, je nákladné ich pri každej operácii kontrolovať atď.
Preto sa neboj, keď ti po vymazanom riadku vloží úplne nové číslo, je to tak správne a má to svoje odôvodnenie.
_________________
A. S. Tanenbaum píše:
The terms LF, MF, and HF refer to low, medium, and high frequency, respectively. Clearly, when the names were assigned, nobody expected to go above 10 MHz, so the higher bands were later named the Very, Ultra, Super, Extremely, and Tremendously High Frequency bands. Beyond that there are no names, but Incredibly, Astonishingly, and Prodigiously high frequency (IHF, AHF, and PHF) would sound nice.