Naja, ganz so schlimm ist es ja nicht.
Ich arbeite auch gerne mit dem Zähler, da viele Zugriffe und Querverweise mit dieser eindeutigen Nummer einfach klarer sind.
Ausserdem stellt es (ggf.) sicher, dass man nicht so einfach per ODBC Daten unterjubeln kann.

Um den Wert zu erfragen, kann man auch in 2 Schritten vorgehen, wenn man denn das Ergebnis benötigt:

exec sql set : MyCount = next value for MySeq;
insert into mytable Values(: MyCount, ...);

Ob das aber performant ist ...