Lie*_*ero 7 sql-server integration-testing database-testing in-memory-database
我基本上有一个测试场景,我在那里
SQL Server 是否仅支持内存中的类似内容,以便我可以通过删除 #1 和 #5 来加快速度?显然我不需要坚持。
SQL Server 具有内存中 OLTP。此功能与您正在研究的内容非常接近。从 SQL Server 2016 SP1 开始,所有版本都可以使用,包括 sql express。
显然我不需要坚持
该选项DURABILITY=SCHEMA_ONLY仅保留元数据。这种场景对于暂存表来说可能是最佳的,因为它导致数据加载的无锁/闩锁/日志方式。显然,该表将无法在实例/服务重启后继续存在。
CREATE DATABASE [Test]
GO
-- Memory Optimized FG
ALTER DATABASE [Test] ADD FILEGROUP [MemoryOptimizedFG] CONTAINS MEMORY_OPTIMIZED_DATA
ALTER DATABASE [Test] ADD FILE (name='Test1', filename='D:\SQLData\TestInMemory') TO FILEGROUP [MemoryOptimizedFG]
GO
CREATE TABLE dbo.[TestTable] (
ID int NOT NULL IDENTITY (1, 1) PRIMARY KEY NONCLUSTERED,
ColumnID int NOT NULL,
Description varchar(100) NOT NULL,
dateAndTime datetime NOT NULL
) WITH (MEMORY_OPTIMIZED=ON, DURABILITY=SCHEMA_ONLY)
GO
Run Code Online (Sandbox Code Playgroud)
参考: