Ich fürchte eine elegantere lösung wirst du auch nicht in SQL bekommen.

Ich selbst verwende wenn möglich "GENERATED ALWAYS AS IDENTITY (CYCLE)" für solche Spalten beim Erstellen einer Tabelle.
Dadurch benötige ich die ganze Verwaltung mit dem Nummerkreis nicht.

Beispiel
Tabelle TAB1 hat 3 Spalten:
ID
SP1
SP2

Beim Insert mache ich dann folgendes:
Code:
Select ID From Final Table
(Insert Into TAB1 (SP1, SP2)
Values ('Wert1', 'Wert2'))
Somit habe ich einen Satz hinzugefügt und bekomme als Ergebnis die neue Nr.

lg Andreas