在内存中分配的SQL小表

cMi*_*nor 0 c++ memory sql-server vector sql-server-2008

有没有办法在内存中SQL Server存储这样的表10 attributes and 10 rows

a1   a2   a3  a4  a5  a6  a7  a8  a9 a10
----------------------------------------
138 498  365 345 500 473 498 125 134 800
448 498  362 348 500 463 498 625 165 700
468 498  625 329 500 435 498 625 345 600
437 701  365 326 500 453 498 625 645 500
438 498  326 329 500 438 498 625 745 400
439 499  626 329 500 438 498 525 685 300
440 500  327 328 500 423 498 627 655 200
444 214  331 334 500 428 498 125 615 100
448 498  362 348 500 463 498 225 165 700
468 498  625 329 500 435 498 425 345 600
Run Code Online (Sandbox Code Playgroud)

有没有办法将此表存储在连续的内存中?

我正在考虑制作一些矢量并使表格成为一行(而不是10行的10个属性构成一个大小为100向量.有没有办法做到这一点?

你可能会问我为什么要这样做,这是因为我想在内存中做一些微积分,避免编写或使用磁盘,然后 用C++或.NET 访问内存或向量(可能是C#?)

JNK*_*JNK 5

不要试图指示SQL Server如何处理这样的事情的内存.它是一种声明性语言 - 你告诉它你想要什么,它会弄清楚如何去做.

将其保留在内存中只是恢复的问题.话虽这么说,一旦你创建了表,它将被写入磁盘后保存在内存中.SQL Server缓存数据页,这样的东西就是单个页面,所以很多磁盘访问都不应该成为问题.