Wie führe ich diesen T-SQL-Befehl durch eine C# -Methode aus, damit ich die nächste ID einer Tabelle bekommen kann? GetNextID() - Methode in C#
declare @IDColumnName as varchar(150)
declare @TableName as varchar(150)
declare @SQL as nvarchar(1000)
declare @returns as int
set @IDColumnName = 'ID'
set @TableName = 'User'
set @returns = -1
set @SQL = 'select MAX([' + @IDColumnName + ']) from [' + @TableName + ']'
--print @SQL
EXEC @returns = sp_executesql @SQL
--print @returns
Wie kann ich dieses Problem lösen, ohne Identität zu verwenden? –
Verwenden Sie eine serialisierbare Transaktion, und akzeptieren Sie die Blockierung. Sonst noch etwas und du hast eine Race-Condition. Identität ist viel billiger. –