Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Oracle-Sequenz dann aber im MS SQL Server

Es gibt keine exakte Übereinstimmung.

Das Äquivalent ist IDENTITY, das Sie beim Erstellen einer Tabelle als Datentyp festlegen können. SQLSERVER erstellt während des Einfügens automatisch eine laufende Sequenznummer. Der zuletzt eingefügte Wert kann durch Aufrufen von SCOPE_IDENTITY() oder durch Abfragen der Systemvariable @@IDENTITY (wie von Frans hervorgehoben)

abgerufen werden

Wenn Sie das genaue Äquivalent benötigen, müssten Sie eine Tabelle erstellen und dann eine Prozedur schreiben, um den nächsten Wert und andere Operationen erneut abzustimmen. Siehe Antwort von Marks zu Fallstricken.

Edit:
SQL Server hat die Sequence ähnlich wie Oracle implementiert. Weitere Einzelheiten finden Sie in dieser Frage.

Wie würden Sie Sequenzen in Microsoft SQL Server implementieren?