我从远程服务器读取表放入内存中的DataTable,
我本地服务器要用到这些数据,至于怎样处理是不定的,我有可能更新、插入、删除,有可能还影响到多张表。
我现在的做法是
循环DataTable每一行,调用事先定义好的处理块(不定的处理,一组Sql语句)。事务提交每一组Sql语句。
当然数据量大的话,这样的效率不高了。
有没有什么好的解决方案呢?
前提,处理是不定的,表结构也有可能不同,只是使用DataTable的数据,从而 影响到本地数据库
7 个解决方案
#1
再补充一下,如果数据量很大,取出来全部加入内存,可能会造成假死,
大家有什么办法呀?谢谢啦
大家有什么办法呀?谢谢啦
#2
使用sql2008的表参数变量,可以先delete 然后insert
#3
数据量大就不要全取出来,可以做分页
#4
这个想做成通用性很强的东西
不要全取出来,需要参数配置,但数据量小的时候不需要分页的话,需要有个判断,查询前判断数据量,再决定分页么?这样能做到么?感觉好麻烦呀
不要全取出来,需要参数配置,但数据量小的时候不需要分页的话,需要有个判断,查询前判断数据量,再决定分页么?这样能做到么?感觉好麻烦呀
#5
还有,我本地数据库有可能还不是MSSQL
#6
要通用性,就得牺牲性能,要性能,就要针对特定数据库设计,两者是矛盾的。
#7
是啊,性能与抽象性矛盾这个是肯定的,就是想找一个最合适的做法,呵呵,
#1
再补充一下,如果数据量很大,取出来全部加入内存,可能会造成假死,
大家有什么办法呀?谢谢啦
大家有什么办法呀?谢谢啦
#2
使用sql2008的表参数变量,可以先delete 然后insert
#3
数据量大就不要全取出来,可以做分页
#4
这个想做成通用性很强的东西
不要全取出来,需要参数配置,但数据量小的时候不需要分页的话,需要有个判断,查询前判断数据量,再决定分页么?这样能做到么?感觉好麻烦呀
不要全取出来,需要参数配置,但数据量小的时候不需要分页的话,需要有个判断,查询前判断数据量,再决定分页么?这样能做到么?感觉好麻烦呀
#5
还有,我本地数据库有可能还不是MSSQL
#6
要通用性,就得牺牲性能,要性能,就要针对特定数据库设计,两者是矛盾的。
#7
是啊,性能与抽象性矛盾这个是肯定的,就是想找一个最合适的做法,呵呵,