Hallo,
die Beispiele in Beitrag #1 scheinen mir nicht konsistent zu sein. Ich hätte erwartet, dass bei Cursor auf (10, 'g') nicht (10, 'a') sondern (10, ' ') eingefügt würde. Vor allen Dingen würde ich bei der alpha-position keinen NULL-Wert oder Leerstring zulassen. Ein Blank wäre okay, der Feldtyp sollte dann von varchar(1) auf char(1) geändert werden. Mit diesen Korrekturen und einer Lookup-Tabelle LETTERS (LETTER), welche alle gültigen alpha-position Werte enthält, lässt sich der "nächste" Buchstabe leicht ermitteln:
SQL-Code:
select min(letter)
from letters
where letter not in (select alphapos from items where numpos = 10)
Der Code könnte entsprechend angepasst gut in einem Trigger untergebracht werden. Es gibt aber sicher noch andere Wege.
Grüße vom marabu