你好 我正在开发一个c#应用程序,用于选择和比较数据库上的一些数据,有超过500'000条记录的表上。我正在使用mysql连接器,并且我将要做一个:哪个是mysql中用c#可选择的最大行数?
SELECT * FROM table
从那张表中。 我的问题是:建议使用select * without limit?如果我一次选择所有500000条记录,这个过程是否会产生问题,或者我应该限制用户选择组中的记录? 我问,因为在VB中,我遇到了这种选择的问题,使停止程序。
谢谢大家。
编辑:我选择功能:
public Object[] QuerySelect(String query)
{
IDbCommand dbcmd = dbcon.CreateCommand();
dbcmd.CommandText = query;
IDataReader reader= dbcmd.ExecuteReader();
ArrayList result = new ArrayList();
while (reader.Read())
{
Hashtable ht = new Hashtable();
int fieldCount = reader.FieldCount;
for (int i = 0; i < fieldCount; i++)
ht.Add(reader.GetName(i), reader[i]);
result.Add(ht);
}
reader.Close();
return result.ToArray();
}
嗨,如果你准确地解释你想要做什么,你可以得到好的想法,如何正确地做到这一点,丹尼尔是正确的DataReader会比一次加载数据集上的一切,但我相信如果某些逻辑可以放在存储过程中,或者可以使用滑动窗口方法完成,那就更好了。 – 2011-02-23 11:33:23
我必须阅读这些行,并且对于每一行我都必须检查一些值,然后在特定条件下更新此值。我不需要查看这个结果,只需处理它们,在命令Promt应用 – albanx 2011-02-23 11:49:19