sqlite.net 中游标的使用

njutmars 2012-05-29 08:54:31
我用sqlite.net遍历每条记录,然后更新每条记录。


"select * from descriptors limit 1 offset " + i"
i在循环中自增。

一开始很快,但到8w条以后会非常慢。有没有什么更快的方式?例如游标一样的东西在.net中使用
...全文
97 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
billlyh 2012-05-29
  • 打赏
  • 举报
回复
优化一下,走索引
njutmars 2012-05-29
  • 打赏
  • 举报
回复
贴出代码给大家看看

string constring = @"data source=C:\desnew.db";
SQLiteConnection con = new SQLiteConnection(constring);
con.Open();
SQLiteCommand cmd;
cmd = new SQLiteCommand(con);
for (int i = 1; i <= 191202; i++)
{
cmd.CommandText = "select * from descriptors limit 1 offset " + (i - 1);
SQLiteDataReader rd = cmd.ExecuteReader();
//....read data
var cmd1 = new SQLiteCommand(con);
cmd1.CommandText = "update descriptors set cas_no_hash='" + guid.ToString() + "' where mc_no='" + mc_no + "'";
cmd1.ExecuteNonQuery();
Console.WriteLine("第{0}条已更新-----{1}", i, mc_no);

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧