0
我正在编写Web爬虫程序。所有链接都存储在MySQL数据库中。由于我将在多个节点上运行爬网程序,因此我需要尽快将URL设置为“正在爬网”,以保持高效。MySQL - 更新我正在选择的相同记录
我的网络爬虫是用C#编写的。现在,它下载URL和ID,然后将URL设置为使用ID进行爬网。问题是需要2个不同的查询。有什么方法可以将它们结合在一起吗?
这里是我当前的代码:
string stm = "SELECT * FROM pages WHERE IsCrawled = 0 LIMIT 1;";
MySqlCommand cmd = new MySqlCommand(stm, conn);
cmd.ExecuteScalar();
id = -1;
using (rdr = cmd.ExecuteReader())
{
if (rdr.Read())
{
URL = rdr.GetString(1);
id = rdr.GetInt32(0);
}
}
MySqlCommand update = new MySqlCommand("UPDATE pages SET IsCrawled = 1 WHERE ID = '"+id+"'", conn);
update.ExecuteScalar();
同样,我想查询相结合。
'Convert.ToString'返回'string'。如果你想使用它的返回值,你应该顺便给它一个_string reference_。 –
修好了,谢谢。 – user1599078
我想如果你使用orm(linq,ado.net等),你可以做你正在问的东西。使用这种方法,我认为你运气不好。 – horace