Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
SQLite:memory:索引仍在写入磁盘_Sqlite - Fatal编程技术网

SQLite:memory:索引仍在写入磁盘

SQLite:memory:索引仍在写入磁盘,sqlite,Sqlite,我试图让SQLite在内存中完全运行。我正在使用以下连接字符串: var conn=new SQLiteConnection(@“数据源=:内存:;同步=关闭; 日志模式=关闭;缓存大小=10000“; 我在一个事务中写入10000000个插入-这与我预期的速度一样快,并且不会触及磁盘 一旦我开始在表上创建索引,IO就会出现峰值,我可以看到它正在将临时文件写入AppData文件夹 我假设我缺少一个设置/PRAGMA,但我没有找到它。任何帮助都将不胜感激 我进一步修改了设置,增加了页面大小和缓存

我试图让SQLite在内存中完全运行。我正在使用以下连接字符串:

var conn=new SQLiteConnection(@“数据源=:内存:;同步=关闭;
日志模式=关闭;缓存大小=10000“;
我在一个事务中写入10000000个插入-这与我预期的速度一样快,并且不会触及磁盘

一旦我开始在表上创建索引,IO就会出现峰值,我可以看到它正在将临时文件写入AppData文件夹


我假设我缺少一个设置/PRAGMA,但我没有找到它。任何帮助都将不胜感激

我进一步修改了设置,增加了页面大小和缓存大小:

我相信当总页数用完时,它开始向临时存储区写入内容。我试图设置temp_store pragma,但没有任何效果-我正在使用的版本可能是为了覆盖该设置而编译的

无论哪种方式,具有更大的页面大小和更高的总页数都允许表和索引保留在内存中

var conn = new SQLiteConnection(@"Data Source=:memory:;Synchronous=OFF;
            Journal Mode=OFF;Cache Size=1000000;Page Size=8192;");