Ich verwende globale temporäre Tabellen für einfache Integrationstests meiner von SQL Server unterstützten Anwendung.
Die Funktion min_active_rowversion
scheint jedoch keine globalen temporären Tabellen zu enthalten, wie hier dargestellt:
using (var connection = new SqlConnection("data source=.;Integrated Security=True"))
{
connection.Open();
connection.Execute("create table ##mytable ( Id int, rv rowversion )");
var a = ToUInt64(connection.Query<byte[]>("select min_active_rowversion()").Single()); // => 20001
var x = ToUInt64(connection.Query<byte[]>("insert into ##mytable (Id) output Inserted.rv values (1)").Single()); // => 22647
var b = ToUInt64(connection.Query<byte[]>("select min_active_rowversion()").Single()); // => 20001
}
Ich kann diese Einschränkung nirgendwo dokumentieren. Kann das zum Laufen gebracht werden? Und wenn ja, wie?
sql-server
sql-server-2016
temporary-tables
Asgerhallas
quelle
quelle