In einem MSDN-Forum beschwert sich ein Kollegen im Artikel "Bug in SQL Server 2008 SP1?" darüber, dass negative Identity-Inkremente nicht mehr gehen.
Ich muss zugeben, dass ich auf diese Idee gar nicht erst gekommen bin, weil ich IDENTITY schon ewig kenne. Und "früher" wurde immer um Eins rauf gezählt. Aber seit ein paar Versionen (SQL-Server-2005?) kann man ja den Seed und das Inkrement frei wählen. Freilich gehen dann auch negative Werte. Aber möglicherweise kamen die Entwickler genau so wenig auf diese Idee und vergaßen in der Doku zu schreiben, dass die Werte positiv sein sollen? Deswegen entspricht die Angabe von negativen Seeds und Inkrementen tatsächlich den Spezifikationen: In den Books-Online steht nicht drin, dass die beiden positiv sein müssen.
Es werden noch Wetten angenommen: Ist das ein Bug oder "works as designed"? Ich gehe im Zweifelsfall von Letzterem aus… 😉
PS: Ich habe hier daheim gerade keinen 2008er SQL-Server, daher habe ich nicht ausprobiert, ob da wirklich ein Bug kommt.