sql >> Database >  >> RDS >> Oracle

Hoe hergebruik ik Oracle-reekshiaten in de primaire sleutelkolom?

Bedoel je, zal de reeks ooit een waarde retourneren die in een "gap"-bereik ligt? Ik denk het niet, tenzij je het om de een of andere reden laat vallen/opnieuw aanmaakt. Ik denk dat je een soort functie zou kunnen schrijven om de PK-hiaten in je tabel te vinden, die gap-bereiken vervolgens op een andere tafel op te slaan en je eigen reeksfunctie te "rollen" met behulp van de gap-tabel. Heel lelijk. Proberen om deze hiaten te "herstellen" klinkt gewoon als een wanhopige poging om het onvermijdelijke te vermijden - uw java PK-gegevenstype zou moeten zijn uitgelijnd met het DB-gegevenstype. Ik had lang geleden hetzelfde probleem met een VB-app met een klassesleutel gedefinieerd als 16-bits geheel getal, en de reeks overschreed 32K, moest de variabelen veranderen in een Long. Ik zeg, bijt de kogel, en maak de conversie. Een beetje pijn nu, zal je later veel aanhoudende pijn besparen. Gewoon mijn mening.



  1. Hiërarchische gegevens afdrukken in een bovenliggende kindvorm ongeordende lijst php?

  2. MySQL-query waarbij JOIN afhankelijk is van CASE

  3. Het verzenden van HTML-e-mail resulteert in e-mail met HTML-bron (Codeigniter-e-mailklasse)

  4. Tabel BIJWERKEN met SUM() en COUNT() in dezelfde tabel naar verschillende kolommen