这种情况不要用linq,直接数据库导出
没有用过 postgresql,不知道其特点。 一般来说,对于带有事务关系数据库如果要大量插入数据,你需要注意: 1. 几百条或者几千条记录为一个事务。不要每条插入语句(默认或者显式地)启动一个事务。特别对于一些事务“锁”非常慢的数据库系统,例如SQLite,其Commit操作巨慢无比。 2. 不要在有索引、约束定义的表上大量插入数据。如果一定要批量插入,你应该使用 MDL 语句将所有这些东西都删除掉,然后在插入完毕再重新修改到表定义。 3. 在插入过程中不要做自认为聪明的比较操作。例如有人一遍插入、一遍比较有没有重复(以为有了索引就能1000倍速度加快这种比较)。这在数据量很小时也许没有什么,但是数据量很大时,你可能把原本5分钟能做完的事情变成仂个小时才能做完的事情。因为即使是在比较重能用到索引加速,此比较速度也会因为表中数据量加大而快速增加,并且比单纯地插入记录的速度肯定是要慢十倍到几十倍的。
8,494
社区成员
4,736
社区内容
加载中
试试用AI创作助手写篇文章吧