Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/477.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
有没有办法控制C#DataTable的内存使用_C#_Memory_Datatable_Out Of Memory_Sqlbulkcopy - Fatal编程技术网

有没有办法控制C#DataTable的内存使用

有没有办法控制C#DataTable的内存使用,c#,memory,datatable,out-of-memory,sqlbulkcopy,C#,Memory,Datatable,Out Of Memory,Sqlbulkcopy,我正在编写一个工具,使用C#SqlBulkCopy将数据复制到SQL Server中。出于可靠性原因,我将每批数据加载到一个DataTable中(这样,如果插入失败,我可以稍后在同一批上重试),用户可以指定批大小。现在的问题是,如果用户将批处理大小设置为非常大的值,DataTable的内存消耗将非常大,甚至会导致OutOfMemoryException 我能想到的一个解决方案是,在将数据缓存到DataTable中并控制其大小时,对数据大小进行汇总。有没有更好的办法 多谢各位

我正在编写一个工具,使用C#SqlBulkCopy将数据复制到SQL Server中。出于可靠性原因,我将每批数据加载到一个DataTable中(这样,如果插入失败,我可以稍后在同一批上重试),用户可以指定批大小。现在的问题是,如果用户将批处理大小设置为非常大的值,DataTable的内存消耗将非常大,甚至会导致OutOfMemoryException

我能想到的一个解决方案是,在将数据缓存到DataTable中并控制其大小时,对数据大小进行汇总。有没有更好的办法

多谢各位